【发布时间】:2018-03-23 17:35:49
【问题描述】:
我想到了第二个小时,但我不知道为什么会出现错误。 错误说循环找不到字典的第二阶段。
from openpyxl import load_workbook
book = load_workbook('OBS.xlsx')
zakladkaall = book.get_sheet_by_name('ALL')
licznik = 1
liczkolumny = 1
materialproduction = {
licznik : {liczkolumny : ""}
}
for wiersz in range(2, zakladkaall.max_row):
for kolumna in "ABCDEFGHI":
komorka = "{}{}".format(kolumna, wiersz)
wartosckomorki = zakladkaall[komorka].value
materialproduction[licznik][liczkolumny] = wartosckomorki
if liczkolumny < 9:
liczkolumny += 1
print(licznik)
print(liczkolumny)
else:
liczkolumny = 1
licznik += 1
print(licznik)
print(materialproduction[licznik][liczkolumny])
循环应该像这样制作字典: 材料生产[1][1] . . . 材料生产[1][9] 材料生产[2][1] . . . 材料生产[2][9]
等等,但是当“licznik”(第一阶段)将数字增加到“2”时会出现问题...... 你能帮帮我吗?
【问题讨论】:
-
komorka = "{}{}".format(kolumna, wiersz)是不必要的 openpyxl 提供了一个用于访问单元格的编程接口。请仔细阅读官方文档中的介绍。
标签: python dictionary for-loop iteration openpyxl