我正在基於計數動態地在for循環中創建變量。在For循環中動態創建變量,Python
我使用openpyxl模塊遍歷工作表。
value = ~sheet name after using a loop to iterate over sheet names~
wb = (path_to_workbook, use_iterators = True)
ws = wb.get_sheet_by_name(name = value)
for a,b,c,d in ws.iter_rows():
print a.internal_value
的問題是,該變量在for循環的量,取決於有多少活性列有在其每一個從片改變到片材片材。它會吐出錯誤:
"Too many values to unpack"
如果我沒有正確數量的變量來解壓縮到。
我可以用得到的列數:
ws.get_highest_column()
所以,不知何故,我需要做:
for ~dynamically create variables by count of columns~ in ws.iter_rows():
print variable1.internal_value
我看到使用EXEC一些帖子,但我沒有任何有關它的經驗,我總是看到它是如何讓你陷入困境的。
您永遠不應該永遠需要動態地命名變量。在這種情況下,您誤解了「for」循環做了什麼 - 如果有幫助,它們就是所謂的其他語言中的_foreach_ loops。 – roippi
謝謝。我明白,for循環是爲每個項目,在這種情況下,每一行。但是每行中可能有很多項目。我使用iter_rows()看到的openpyxl模塊示例的方式,在我看來,這需要完成。這一點以及如果我沒有爲每個活動列設置確切數量的變量,就會發生錯誤。奇怪的行爲,我只是想着這件事。 – Mike