List=[{pak1:1,psja:34,padg:46},{pare:364,pjdy:3},{psuy:51}……]
我需要把他们拼接成这样的形式
Dict={pak1:1,psja:34,padg:46,pare:364,pjdy:3,psuy:51,……}
这边因为数据库比较大直接追加加到一个新的列表是跑不出来的,所以请教一下大神们有什么办法,重复的也要
List=[{pak1:1,psja:34,padg:46},{pare:364,pjdy:3},{psuy:51}……]
我需要把他们拼接成这样的形式
Dict={pak1:1,psja:34,padg:46,pare:364,pjdy:3,psuy:51,……}
这边因为数据库比较大直接追加加到一个新的列表是跑不出来的,所以请教一下大神们有什么办法,重复的也要
使用collections 中的defaultdict,将重复键的值写入一个列表中:
from collections import defaultdict
lst=[{'pak1':1,'psja':34,'padg':46},{'pare':364,'pjdy':3},{'psuy':51,'psja':18}]
new = defaultdict(list)
for d in lst:
for k ,v in d.items():
if k in new:
new[k].append(v)
else:
new[k]=[v]
new1={}
for k,v in new.items():
if len(v)==1:
new1.update({k:v[0]})
else:
new1.update({k:v})
print(new1)