rak*_*esh 4 python csv dictionary
我正在尝试将 dict 列表转换为 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()
Run Code Online (Sandbox Code Playgroud)
输出:'“水果”,“苹果”\r\n“计数”,“1”\r\n“颜色”,“红色”\r\n“水果”,“香蕉”\r\n“计数” ,"2"\r\n"颜色","黄色"\r\n'
fruit apple
count 1
color red
fruit banana
count 2
color yellow
Run Code Online (Sandbox Code Playgroud)
我想要以下格式的数据
fruit count color
apple 1 red
banana 2 yellow
Run Code Online (Sandbox Code Playgroud)
我知道这可以在 pandas 中使用 .to_csv 方法来实现。但我只是想在没有 pandas 或任何第三方库的情况下尝试一下。
任何帮助表示赞赏。谢谢!
csv.DictWritercsv模块提供了一个DictWriter最适合我们处理记录的类,即需要写入 csv 文件的字典列表
fields = ['fruit', 'count', 'color']
writer = csv.DictWriter(output, fieldnames=fields, delimiter='\t')
writer.writeheader()
writer.writerows(csvdata)
Run Code Online (Sandbox Code Playgroud)
print(output.getvalue())
fruit count color
apple 1 red
banana 2 yellow
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5599 次 |
| 最近记录: |