我在Python中有一些值的列表,并希望使用openpyxl将它们写入Excel-Spreadsheet.
到目前为止,我尝试过,其中lstStat是需要写入Excel文件的整数列表:
for statN in lstStat:
for line in ws.range('A3:A14'):
for cell in line:
cell.value(statN)
Run Code Online (Sandbox Code Playgroud)
我得到一个TypeError:'NoneType'对象不能用于代码snipet中的最后一行.
你能帮我解决如何将我的数据写入Excel文件的问题吗?
干杯托马斯
要为单元格指定值,请使用=:
cell.value = statN
Run Code Online (Sandbox Code Playgroud)
您还需要修复循环.请注意,现在,对于每个元素lstStat,您正在编写整个范围.除了不是你想要的,它也不那么灵活:如果lstStat有更多或更少的元素会发生什么?
你想要做的只是循环lstStat并随时增加行号.就像是
r = 3
for statN in lstStat:
ws.cell(row=r, column=1).value = statN
r += 1
Run Code Online (Sandbox Code Playgroud)
你也可以使用Python的enumerate功能:
for i, statN in enumerate(lstStat):
ws.cell(row=i+3, column=1).value = statN
Run Code Online (Sandbox Code Playgroud)
(请注意,A1作为引用cell(row=1, column=1)作为OpenPyXL版本2.0.0,在早期版本中,A1是cell(row=0, column=0).)
| 归档时间: |
|
| 查看次数: |
22960 次 |
| 最近记录: |