Skip to main content
 首页 » 编程设计

Python列表字典理解

2025年05月04日11oomusou

我有一些包含少量词典的“列表”——比如 3 个词典。 3本词典如下:

lstone = [{'dc_test': 1}, {'ac_test':2}, {'con_test':3}] 
lsttwo = [{'dc_test': 4}, {'ac_test':5}, {'con_test':6}] 

如何按如下方式创建新列表:

newlistone = ['dc_test',1,4] 
newlisttwo = ['ac_test',2,5] 
newlistthree = ['con_test',3,6] 

我的目标是编写一个新的csv文件,使其显示如下:

dc_test,1,4 
ac_test,2,5 
con_test,3,5 

请您参考如下方法:

首先将你的列表转换成字典

d = [dict(itertools.chain(*(d.iteritems() for d in a))) 
     for a in [lstone, lsttwo]] 

接下来构建转置列表:

keys = d[0].keys() 
transposed = [[e[k] for k in keys] for e in d] 

最后,转置并使用 csv.writer 将其写入文件:

with open("a.csv", "wb") as f: 
    csv.writer(f).writerows(zip(keys, *transposed))