写入 CSV 文件,其中 value 是一个字典,value 需要与 key 在同一行
Write to CSV file where value is a dictionary, and value needs to be on same row as key
我的字典输出如下所示:
{'2016-07': {'open': 2, 'closed': 14}, '2016-12': {'open': 14, 'closed': 37}}
我需要创建一个 CSV 文件,其中每一行如下所示:
2016-07, 2, 14
2016-12, 14, 37
下面是我写成CSV的方法:
def send_to_csv():
values = sort_by_year_month()
with open('Issues_by_month.csv', 'w') as csv_file:
file_writer = csv.writer(csv_file)
file_writer.writerow(['Month',
'Opened Issues',
'Closed Issues',
])
for key, value in values.items():
file_writer.writerow([key, value])
我想我只需要遍历值然后写出来,但不确定。
为确保日期已排序,请尝试迭代其排序值:
for key in sorted(values.keys()):
d = values[key]
file_writer.writerow([key, d.get('open'), d.get('closed')])
试试这个:
import csv
data = {
'2016-07': {'open': 2, 'closed': 14},
'2016-12': {'open': 14, 'closed': 37}
}
with open('output.csv', 'w') as csv_file:
writer = csv.writer(csv_file)
writer.writerow(['Month',
'Opened Issues',
'Closed Issues'])
# Get the date
for date in sorted(data):
row = [date]
# Append each value to the row
for key, value in data[date].items():
row.append(value)
writer.writerow(row)
output.csv
Month,Opened Issues,Closed Issues
2016-07,2,14
2016-12,14,37
上试用
我的字典输出如下所示:
{'2016-07': {'open': 2, 'closed': 14}, '2016-12': {'open': 14, 'closed': 37}}
我需要创建一个 CSV 文件,其中每一行如下所示:
2016-07, 2, 14
2016-12, 14, 37
下面是我写成CSV的方法:
def send_to_csv():
values = sort_by_year_month()
with open('Issues_by_month.csv', 'w') as csv_file:
file_writer = csv.writer(csv_file)
file_writer.writerow(['Month',
'Opened Issues',
'Closed Issues',
])
for key, value in values.items():
file_writer.writerow([key, value])
我想我只需要遍历值然后写出来,但不确定。
为确保日期已排序,请尝试迭代其排序值:
for key in sorted(values.keys()):
d = values[key]
file_writer.writerow([key, d.get('open'), d.get('closed')])
试试这个:
import csv
data = {
'2016-07': {'open': 2, 'closed': 14},
'2016-12': {'open': 14, 'closed': 37}
}
with open('output.csv', 'w') as csv_file:
writer = csv.writer(csv_file)
writer.writerow(['Month',
'Opened Issues',
'Closed Issues'])
# Get the date
for date in sorted(data):
row = [date]
# Append each value to the row
for key, value in data[date].items():
row.append(value)
writer.writerow(row)
output.csv
Month,Opened Issues,Closed Issues
2016-07,2,14
2016-12,14,37
上试用