python - 如何将字典导入csv

标签 python csv dictionary

我必须将数据从字典导出到 csv。字典包含列表。我试过这样导出

with open("info.csv", 'w',newline='')as csvfile:
header = ['Club', 'Stadium']
writer = csv.DictWriter(csvfile, fieldnames=header)
writer.writeheader()
writer.writerow(info)

但是结果是

 Club          Stadium
 ['Arsenal,    ['Emirates',
 'AFC', etc.]  'Villia park',etc.]

我想要这个

Club         Stadium
Arsenal      Emirates
AFC          Villia park

我该怎么做?

最佳答案

你可以像这样完成你想做的事。

import csv

with open('info.csv', 'w', newline='') as f:
    header = info.keys()
    writer = csv.DictWriter(f, fieldnames=header)
    writer.writeheader()
    for pivoted in zip(*info.values()):  # here we take both lists and pivot them
        writer.writerow(dict(zip(header, pivoted))) # pivoted is a 2 element tuple

我经常使用 pandas,它基本上是一个单行代码,但它可能对您的需求有点矫枉过正。

import pandas as pd
df = pd.DataFrame(info).to_csv('info.csv', index=False)

如果您一般不需要使用 pandas,最好坚持使用内置的 csv 模块。

关于python - 如何将字典导入csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57640691/

相关文章:

c++ - 什么容器允许二进制搜索和随机删除元素?

python - 如果使用很长的字符串作为键,在 Dict 中搜索的时间复杂度是多少?

python - 无法更改 pandas 中的日期时间

python - 没有任何缓存的随机偏移二进制原始磁盘写入

Python 获取 IDE linter 以从 pythonnet 的 clr 中的系统导入中查看

python - Django CSV Export..在列表中迭代

python - 在 for 循环 django 模板中添加列表限制

ruby-on-rails - rake 数据库 :seed unable to read CSV

java - OpenCSV 不转义引号 (")

java - 存储大量模拟时间序列数据