[英]Can't write data into Excel-Sheet using openpyxl Workbook
[英]How can openpyxl write list data in sheet?
我正在使用openpyxl处理一些科学数据,当我将列表数据写入excel文件时,我遇到了问题。
wb = openpyxl.Workbook(optimized_write=Ture)
ws_write = wb.create_sheet(0)
for i in range(row):
ws_write.append([datalist[i][0]])
wb.save(filename='data.xlsx')
完成后,似乎只能将列表写入 xlsx 文件的第一列。 如何将数据列表的相同列分配给同一张表中 xlsx 文件的相同列? 有没有控制输出的参考?
使用ws.append(row)
您必须将整个传递作为序列或作为生成器插入。 我不明白你的数据结构,但像下面这样的东西应该可以工作。
for row in datalist:
ws.append(row)
如果这还不够,请提供有关数据结构的更多信息。
您只写入数据的第一列(col=0)。 为了包含所有数据,添加一个内部循环:
for i in range(row):
for j in range(col):
ws_write.append([datalist[i][j]])
wb.save(filename='data.xlsx')
或者,一次写入整行:
for i in range(row):
ws_write.append([datalist[i]])
wb.save(filename='data.xlsx')
我不知道那个包来确保输出语法是正确的。
编辑:查看此内容后: 在 Python 中使用 openpyxl 将行插入 Excel 电子表格中,您似乎需要执行以下操作:
for i in range(row):
for j in range(col):
ws_cell(row=i,col=j).value = datalist[i][j]
wb.save(filename='data.xlsx')
如果我正确理解你的问题,你需要这样的东西:
myList = ['First','Second','Third','Fourth','Fifth']
wb = xl.load_workbook('test.xlsx')
ws= wb.active
ws.append(myList)
这会将列表中的每个项目附加到同一行的每一列上。
希望有帮助:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.