将数据从字典加载到csv

Dum*_*mbQ 1 python csv text dictionary

我有这种格式的字典:

data_dict = {'a' : [1,2,3], 'b' : [[4,5],[6,7],[8,9]]}
Run Code Online (Sandbox Code Playgroud)

我想要做的是以列'格式'将字典中的数据解析为csv文件.所以关键是标题,然后是值,因此输出应如下所示:

a    b
1    [4,5]
2    [6,7]
3    [8,9]
Run Code Online (Sandbox Code Playgroud)

我曾试图使用csv.DictWriter或者csv.writer没有任何结果可供我使用.

fal*_*tru 6

您可以使用zip聚合多个迭代中的元素:

>>> rows = zip([1,2,3], [[4,5],[6,7],[8,9]])
>>> for row in rows:
...     print(row)
...
(1, [4, 5])
(2, [6, 7])
(3, [8, 9])
Run Code Online (Sandbox Code Playgroud)
import csv
import sys

data_dict = {'a' : [1,2,3], 'b' : [[4,5],[6,7],[8,9]]}    
keys = sorted(data_dict)  # to get ordered keys
values = [data_dict[key] for key in keys]

writer = csv.writer(sys.stdout, delimiter='\t')  # Replace `sys.stdout` as you need
writer.writerow(keys)
for row in zip(*values):
    writer.writerow(row)
Run Code Online (Sandbox Code Playgroud)