python - 使用 dict_keys 将字典列表转换为 CSV 字符串

标签 python csv dictionary

我正在尝试将字典列表转换为 lambda 函数的 csv 字符串。 我在下面编写的代码将数据作为键值。我正在尝试重写它,以便它基于 dict_keys 工作。

import io
import csv

output = io.StringIO()
csvdata = [{"fruit": "apple", "count": "1", "color": "red"},{"fruit": "banana", "count": "2", "color": "yellow"}]
writer = csv.writer(output, quoting=csv.QUOTE_NONNUMERIC)
    for i in csvdata:
        for key, value in i.items():
            writer.writerow([key, value])
convertedtocsv = output.getvalue()

输出:'"fruit","apple"\r\n"count","1"\r\n"color","re​​d"\r\n"fruit","banana"\r\n “计数”,“2”\r\n“颜色”,“黄色”\r\n'

fruit  apple
count  1 
color  red
fruit  banana
count  2
color  yellow

我想要以下格式的数据

fruit   count  color
apple   1      red
banana  2      yellow

我知道这可以在 pandas 中使用 .to_csv 方法实现。但我只是想在没有 Pandas 或任何第 3 方库的情况下尝试一下。

任何帮助表示赞赏。谢谢!

最佳答案

csv.DictWriter

csv 模块提供了一个 DictWriter 类,它最适合我们处理记录,即需要写入 csv 文件的字典列表

fields = ['fruit', 'count', 'color'] 
writer = csv.DictWriter(output, fieldnames=fields, delimiter='\t')
writer.writeheader()
writer.writerows(csvdata)

print(output.getvalue())

fruit   count   color
apple   1       red
banana  2       yellow

关于python - 使用 dict_keys 将字典列表转换为 CSV 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61466934/

相关文章:

python - Sympy 和矩阵微分 ODE

javascript - 为什么我在运行此示例 node.js 代码时得到 "TypeError: object is not a function"?

python - 检查字典中的唯一值并返回列表

c# - 限制 C# 字典中的值类型 :

c# - 将列表创建的字典从 Python 转换为 C#

python - 读取 CSV 文件,查找具有相同值的列并附加其他列值

python - 单元测试 Flask 功能(使用登录用户)

python文件搜索跳过行

PowerShell 导入和排序 CSV 文件

python - Csv 文件并为字典提供某些键