[英]How do I convert this type of list with dictionary into a csv file?
我有一个如下列表:
'jose-123': {'name': 'alex','age': '30', 'weight': 190},
'jose-124': {'name': 'mark','age: '20','weight': 180},
'jose-126': {'name': 'mark','age: '20','weight': 180},
'jose-125': {'name': 'mike','age': '50','weight': 49}
我想将其转换为 CSV 文件,其中 python 如下所示:
单元 | 姓名 | 年龄 | 重量 |
---|---|---|---|
何塞-123 | 亚历克斯 | 30 | 190 |
何塞-124 | 标记 | 20 | 180 |
何塞-126 | 标记 | 20 | 180 |
何塞-125 | 麦克风 | 50 | 49 |
它看起来好像它的字典,包含子字典。
在这种情况下,您可以轻松地将 go 与 pandas 转换为 DataFrame 使用
df= pd.DataFrame(<YourList>)
然后使用轻松将其转换为 csv
df.to_csv("filename.csv")
如果您的原始数据确实是您在问题中显示的方式,那么您可以将所述字符串包裹在外大括号中。
import ast
import pandas as pd
raw = """\
'jose-123': {'name': 'alex','age': '30', 'weight': 190},
'jose-124': {'name': 'mark','age': '20','weight': 180},
'jose-126': {'name': 'mark','age': '20','weight': 180},
'jose-125': {'name': 'mike','age': '50','weight': 49}
"""
some_string = f"{{{raw}}}" # wrap in braces {}
d = ast.literal_eval(some_string)
temp = []
for k, v in d.items():
a = {'unit': k}
a.update(v)
temp.append(a)
df = pd.DataFrame(temp)
print(df)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.