[英]How to create an Excel file extension .xlsx from a dictionary using openpyxl?
[英]Creating a dictionary from excel file with openpyxl
我是編碼新手,我想從 excel 文件創建兩個不同的字典,如下所示:
ID | Object | 公斤 |
---|---|---|
1142 | 蘋果 | 17,5 |
1143 | 香蕉 | 13,55 |
1144 | 獼猴桃 | 52,3 |
我需要第一個字典看起來像這樣 {(1142:apple),(1143:banana),(1144:kiwi)} 而第二個字典看起來像這樣 {(1142:17,5),(1143:13, 55),(1144:55,3)}
我需要使用 openpyxl 和 python3 來做到這一點。
謝謝!
方法 1 使用 for 循環。
from openpyxl import load_workbook
wb = load_workbook('openpyxl.xlsx')
dict1 = {}
dict2 = {}
for row in wb.worksheets[0].iter_rows(min_row=2, max_row=4, max_col=3):
dict1[int(row[0].value)] = row[1].value
dict2[int(row[0].value)] = row[2].value
print(dict1)
print(dict2)
使用字典理解的方法2
from openpyxl import load_workbook
wb = load_workbook('openpyxl.xlsx')
dict1 = {(int(row[0].value), row[1].value) for row in wb.worksheets[0].iter_rows(min_row=2, max_row=4, max_col=3)}
dict2 = {(int(row[0].value), row[2].value) for row in wb.worksheets[0].iter_rows(min_row=2, max_row=4, max_col=3)}
print(dict1)
print(dict2)
結果:
{1142: 'Apple', 1143: 'Banana', 1144: 'Kiwi'}
{1142: '17,5', 1143: '13,55', 1144: '52,3'}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.