Python - 将嵌套字典中的数据提取到 Excel
Python - Extract data from nested dictionary into Excel
我有一个嵌套字典,我想执行以下操作:
- 根据字典名称创建excel作品sheet(Excel sheet根据下面的示例调用 dict1、dict2 等)
- 在 Excel sheet 中创建 headers 匹配字典 - 所以单元格 A1 =
key1
,单元格 B1 = key2
- 将我在字典中的数据填充到相关列中(例如 col A2、A3、A4 等具有
data1
、data2
、data3
(以及相同对于其余的列)
输入字典示例:
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()
我有一个嵌套字典,我想执行以下操作:
- 根据字典名称创建excel作品sheet(Excel sheet根据下面的示例调用 dict1、dict2 等)
- 在 Excel sheet 中创建 headers 匹配字典 - 所以单元格 A1 =
key1
,单元格 B1 =key2
- 将我在字典中的数据填充到相关列中(例如 col A2、A3、A4 等具有
data1
、data2
、data3
(以及相同对于其余的列)
输入字典示例:
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()