将字典转换为CSV文件每个键有多个值

2024-04-25 13:47:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个有三个键的字典,但是每个键都有多个值。在

mydictionary = {'wave': [14.26661, 14.3583, 14.45, 14.54169, 14.63338, etc], 'flux': [2.092778, 1.188152, 2.130176, 3.201674, 2.043295, etc], 'unc': [0.7566527, 0.7157381, 0.7030209, 0.6992941, etc]}

我想以以下格式将字典保存为csv格式。在

波,通量,unc

14.2666,2.0927,0.756

14.35,1.18,0.715

每个键都是列标题,每个值都在它自己的行中。最终的csv应该有3列和116/117行。在

这是我得到的最接近的,但是csv只写了第一列,并且跳过了行。在

^{pr2}$

Tags: csv标题字典格式etcwave通量unc
1条回答
网友
1楼 · 发布于 2024-04-25 13:47:22

您可以将所有的值列表收集到一个列表中,然后进行转置,这样行就可以逐行堆叠起来,并与标题对齐:

with open(n + '_sp.csv', 'w') as f:
    w = csv.writer(f)
    header = ['wavelength', 'flux', 'unc']
    w.writerow(header)
    rows = zip(*[mydictionary[h] for h in header])
    w.writerows(rows)

相关问题 更多 >