【发布时间】:2015-01-19 04:08:50
【问题描述】:
我有一个字典列表,每个字典都代表特定事件的数据。数据是:
events = [{'date': '7:30 PM ET, October 29, 2014',
'guests': ['Cleopatra', 'Ghandi'],
'location': 'Cairo, Egypt',
'random_nums': [1, 2, 3, 4]},
{'date': '8:00 PM ET, November 1, 2014',
'guests': ['JFK', 'Abe Lincoln'],
'location': 'Dallas, TX',
'random_nums': [5, 6, 7, 8]},
{'date': '8:30 PM ET, November 3, 2014',
'guests': ['Joan of Arc', 'Genghis Khan'],
'location': 'the Moon',
'random_nums': [9, 10, 11, 12]}]
我正在尝试写入 CSV,以便每个偶数都表示为自己的行,并使用公共键作为标题。
date random_nums guests location
7:30 PM ET, October 29 1, 2, 3, 4 Cleopatra, Ghandi Cairo, Egypt
8:00 PM ET, November 1 5, 6, 7, 8 JFK, Abe Lincoln Dallas, TX
8:30 PM ET, November 3 9, 10, 11, 12 Joan of Arc, Genghis Khan the Moon
我看过很多关于这个主题的类似帖子,但没有一个能解决这个特定问题。我意识到存在一些分隔符问题,因为字符串中有逗号。
所以,我需要帮助:
- 使每个事件成为一行(列表应包含在单个元素中)
- 在不更改字符串中的逗号或一些解决方法的情况下解决我的分隔符问题
这是我得到的最接近的:
with open("output.csv", "wb") as f:
writer = csv.writer(f, delimiter = ';')
writer.writerow(list(events[1].keys()))
for event in events:
print event.values()
for row in event.values():
writer.writerow(row)
【问题讨论】:
标签: python python-2.7 csv dictionary export-to-csv