【问题标题】:Python: How to write a dictionary of tuple values to a csv file?Python:如何将元组值的字典写入 csv 文件?
【发布时间】:2011-07-28 16:29:25
【问题描述】:

如何将以下字典打印到 csv 文件中?

maxDict = {'test1': ('alpha', 2), 'test2': ('gamma', 2)} 

因此,输出 CSV 如下所示:

test1, alpha, 2
test2, gamma, 2

【问题讨论】:

  • 嘿湿婆!我看到您得到了答案,但下次请让我们知道您自己尝试了什么,而不是要求其他人编写您的代码。在 python 中,几乎所有常见任务都有一个库。写入 csv 文件的文件名为 csv。那应该很容易找到。如果您没有卡在那里,而是从字典中提取键和值对,您的问题应该以某种方式反映这一点。也就是说,在 SO 上玩得开心。

标签: python csv dictionary tuples


【解决方案1】:
import csv
with open("data.csv", "wb") as f:
    csv.writer(f).writerows((k,) + v for k, v in maxDict.iteritems())

【讨论】:

  • 使用writerows 方法将什么写入csv?是清单吗?元组?
  • 上述代码中的生成器表达式将元组提供给writerows(),但如果您愿意,也可以使用列表。
【解决方案2】:
maxDict = {'test1': ('alpha', 2), 'test2': ('gamma', 2)}
csvData = []
for col1, (col2, col3) in maxDict.iteritems():
  csvData.append("%s, %s, %s" % (col1, col2, col3))
f = open('test.csv', 'w')
f.write("\n".join(csvData))
f.close()

【讨论】:

  • 我更新了对元组的解包,使其更具可读性。
猜你喜欢
  • 2020-06-11
  • 1970-01-01
  • 2018-06-17
  • 2012-05-09
  • 1970-01-01
  • 1970-01-01
  • 2022-01-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多