我必须从 excel 工作簿创建一个嵌套字典。我正在使用 openpyxl 库。Excel 文件看起来像这样:
| score | lat | lon | loc.country| loc.city | loc.street | loc.st_nr | ...
| ---------- | ----------- | ------------ | ---------- | ----------- | ------------ | ------------ | ...
| 2 | 51 | 19 | Poland | Warsaw | Cicha | 1 | ...
| 4 | 52 | 18 | Poland | Cracow | Dluga | 2 | ...
| ... | ... | ... | ... | ... | ... | ... | ...
我想实现这样的目标:
dict = {
"score": 2,
"lat": 51,
"lon": 19,
"loc": {
"country": "Poland",
"city": "Warsaw",
"street": "Cicha",
"st_nr": 1
}
}
到目前为止我所做的是从标题中获取键列表,从行中获取值列表并将它们压缩在一起:
...
wb = load_workbook(file_obj)
worksheet = wb.active
rows = worksheet.iter_rows(values_only=True)
header = next(rows)
for row in rows:
values = row
order = dict(zip(header, row))
...
但它不会产生嵌套的字典。我实现的是:
dict = {
"score": 2,
"lat": 51,
"lon": 19,
"loc.country": "Poland",
"loc.city": "Warsaw",
"loc.street": "Cicha",
"loc.st_nr": 1
}
如何修改它以获得预期的结果?