python - 如何在 CSV 文件中显示嵌套字典
问题描述
我有动态字段,我需要 CSV 文件在其列中显示字段,您可以在此图像中看到,动态字段显示文字 {} 括号并将它们全部显示在一行中,我需要在每一列中分开我没有t 关心每个动态字段的父头是否重复(JOB_INSIGHTS FOR INSTANCE)。我希望每个嵌套的 dict 元素都在自己的列中。提前致谢!!
更新:使用以下代码复制的输出:dict 示例:
my_list_didct= [{
"main_rating": "7",
"job_salary": "$51K",
"job_insights": {
"Job Type : ": "Full-time",
"Job Function : ": "Software Developer",
"aditional_salaries":{"dev_ops":"$44k",
"sysadmin":"$30k"}
}]
try:
ruta_guardado = os.path.join(out_path_file,
'file_{today.strftime('%d-%m-%Y')}_{readfrom_text_file('dat')}.csv")
with open(
ruta_guardado, mode, newline='', encoding='utf-8') as file:
csv.register_dialect('myDialect',
delimiter=';',
quoting=csv.QUOTE_ALL)
print(items)
headers = list(items[0].keys())
csv_writer = csv.DictWriter(file, fieldnames=headers, dialect="myDialect")
csv_writer.writeheader()
my_logger.info(items)
csv_writer.writerows(items)
在顶部的示例中,并不总是找到额外的薪水,有时返回空字典,在这种情况下,我想要一个空的 excel 字段。或者如果存在像其他字段一样传播而不是字典。:L 谢谢编码员。
解决方案
首先,如果不将其转换为DataFramedict
,则无法将其保存到.csv
文件中。因此,您需要将其转换为DataFrame,然后将其保存到您要保存的任何文件中
另外,如果你没有文件,只写文件的名称和格式,它会立即保存。
代码语法
import pandas as pd
my_list_didct= [{
"main_rating": "7",
"job_salary": "$51K",
"job_insights": {
"Job Type : ": "Full-time",
"Job Function : ": "Software Developer",
"aditional_salaries":{"dev_ops":"$44k",
"sysadmin":"$30k"}
}}]
df = pd.DataFrame(my_list_didct)
df.to_csv('file.csv', index=False)
推荐阅读
- bash - 如何使 $(command)>/dev/null 在函数内静音,而不是 --silence sh 文件
- html - 如何并排渲染组件
- typescript - 打字稿类 - 私有和受保护的属性是可见的
- docker - 卷曲 SSL 证书
- angular - 在 Angular 中使用 bypassSecurityTrustStyle 清理脚本
- spring-boot - 无法为 gradle 项目创建 JAR 文件
- r - 无法在 Fedora 29 上启动 RStudio 1.2.1335
- autohotkey - 如何使用按键打开/关闭 AHK 脚本?
- next.js - 如何使用 next.js 和 next-i18next 本地化路线?
- html - 如何在页面内居中菜单而不是在左侧