Python - 将嵌套字典中的数据提取到 Excel

Python - Extract data from nested dictionary into Excel

我有一个嵌套字典,我想执行以下操作:

  1. 根据字典名称创建excel作品sheet(Excel sheet根据下面的示例调用 dict1、dict2 等)
  2. 在 Excel sheet 中创建 headers 匹配字典 - 所以单元格 A1 = key1,单元格 B1 = key2
  3. 将我在字典中的数据填充到相关列中(例如 col A2、A3、A4 等具有 data1data2data3(以及相同对于其余的列)

输入字典示例:

nested_dict = {'dict_1': {'key1': ['data1', 'data2', 'data3'], 'key2': ['1', '2', '3'], 'key3': ['value1', 'value2', 'value3']},
'dict_2': {'key1': ['data1', 'data2', 'data3'], 'key2': ['1', '2', '3'], 'key3': ['value1', 'value2', 'value3']}}

Excel

中的所需输出
key1 | key2|key3|
data1| 1   |value1
data2| 2   |value2
data3| 3   |value3

我目前正在使用 openpyxl 来尝试实现这一点,但不确定如何正确地遍历嵌套字典并访问每个字典的创建工作sheets,然后对其余数据重复。

for k,v in nested_dict.items:
    for sheetName in wb.sheetnames:
        wb.create_sheet(k)
        ws.cell(row=1, column=1).value 
        
wb.save('test.xlsx')  

有人能给我指出正确的方向吗?

你可以使用'pandas'包

import pandas as pd
nested_dict = {'dict_1': {'key1': ['data1', 'data2', 'data3'], 'key2': ['1', '2', '3'], 'key3': ['value1', 'value2', 'value3']},
               'dict_2': {'key1': ['data1', 'data2', 'data3'], 'key2': ['1', '2', '3'], 'key3': ['value1', 'value2', 'value3']}
               }
writer = pd.ExcelWriter('test.xlsx')
for sheet,data in nested_dict.items():
    df = pd.DataFrame(data)
    df.to_excel(writer, sheet_name=sheet,index=False)
writer.save()