我想改进我的代码,替换此:
workbook = xlwt.Workbook()
sheet = workbook.add_sheet("WS")
header = [u'Nome da estação',u'Altitude',u'Latitude',u'Longitude']
column =0
for h in header:
sheet.write(0, column, h)
column += 1
对于某些代码直接使用数组头来写入整行。有什么想法吗?
最佳答案
将数据写入行单元不太可能获得任何实际改进,因为 Excel 会以任何方式单独存储单元格。这可能就是为什么 xlwt
没有记录这种方法的原因。
您可以使用 enumerate 将代码减少几行:
workbook = xlwt.Workbook()
sheet = workbook.add_sheet("WS")
header = [u'Nome da estação',u'Altitude',u'Latitude',u'Longitude']
for column, heading in enumerate(header):
sheet.write(0, column, heading)
如果您发现自己经常做这种事情,请编写一个小实用方法:
def write_header(header, row=0, start_col=0):
for column, heading in enumerate(header, start_col):
sheet.write(row, column, heading)
workbook = xlwt.Workbook()
sheet = workbook.add_sheet("WS")
write_header([u'Nome da estação',u'Altitude',u'Latitude',u'Longitude'])
如果需要,附加参数将允许您设置电子表格中标题的左上角。默认值应覆盖 99% 的用例。
关于python - 如何从数组写入 Excel 中的整行 - xlwt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43712015/