python - 如何将嵌套字典写入 CSV 文件?
问题描述
我正在尝试将嵌套字典写入 CSV 文件并遇到问题;该文件没有写入任何内容,或者它出错了。
字典看起来像这样:
finalDict = 'How would you rate the quality of the product?': [{'10942625544': 'High '
'quality'},
{'10942625600': 'Neither '
'high nor '
'low '
'quality'},
{'10942625675': 'Neither '
'high nor '
'low '
'quality'},
{'10942625736': 'Very high '
'quality'},
{'10942625788': 'Neither '
'high nor '
'low '
'quality'},
{'10942625827': 'Neither '
'high nor '
'low '
'quality'},
{'10942625878': 'Neither '
'high nor '
'low '
'quality'},
{'10942625932': 'High '
'quality'},
{'10942625977': 'High '
'quality'},
{'10942626027': 'Neither '
'high nor '
'low '
'quality'},
{'10942626071': 'High '
'quality'},
{'10942626128': 'High '
'quality'},
{'10942626180': 'Very high '
'quality'},
{'10942626227': 'Very high '
'quality'},
{'10942626278': 'High '
'quality'},
{'10942626332': 'Low '
'quality'},
{'10942626375': 'Very high '
'quality'},
{'10942626430': 'Low '
'quality'},
{'10942626492': 'Low '
'quality'}],
'How would you rate the value for money of the product?': [{'10942625544': 'Above '
'average'},
{'10942625600': 'Below '
'average'},
{'10942625675': 'Average'},
{'10942625736': 'Excellent'},
{'10942625788': 'Above '
'average'},
{'10942625827': 'Below '
'average'},
{'10942625878': 'Average'},
{'10942625932': 'Average'},
{'10942625977': 'Above '
'average'},
{'10942626027': 'Above '
'average'},
{'10942626071': 'Above '
'average'},
{'10942626128': 'Average'},
{'10942626180': 'Excellent'},
{'10942626227': 'Average'},
{'10942626278': 'Average'},
{'10942626332': 'Below '
'average'},
{'10942626375': 'Excellent'},
{'10942626430': 'Poor'},
{'10942626492': 'Below '
'average'}],
我已经尝试过将嵌套字典写入 CSV,但我正在努力使其适应我的具体情况。
我的代码目前看起来像:
def writeToCsv(finalDict):
csv_columns = ['Question', 'UserID', 'Answer']
filename = "output.csv"
with open(filename, "w") as filename:
w = csv.DictWriter(filename, fieldnames=csv_columns)
w.writeheader()
for data in finalDict: #where I'm stuck
任何建议将不胜感激!
解决方案
for question, data in finalDict.items():
for resp in data:
row = {'Question': question,
'UserID': list(resp.keys())[0],
'Answer': list(resp.values())[0]}
w.writerow(row)
推荐阅读
- r - 从R中的给定向量字符串中提取字符串
- neo4j - 升级到 4.0.3 后 Neo4 网页界面仍然是空白页面
- spring-cloud-dataflow - Spring Cloud 数据流授权仅配置
- c# - 当http请求超时时重试多次使用polly c#
- c# - 动态回调方法
- r - 如何删除 R 中的第一列第一行,如附图所示
- python - 如何在python的不同类中创建另一个类的对象
- rust - 将引用转换为未调整大小的透明类型是否安全?
- python - Python ctypes传递字符串指针/缓冲区
- azure - Asp.net core 3.1 - InProcess on Azure 应用服务 HTTP 错误 500.31 - ANCM 无法找到本机依赖项