Python合并两个字典的常用方法与效率比较
本文实例讲述了Python合并两个字典的常用方法与效率比较。分享给大家供大家参考。具体分析如下:
下面的代码举例了5种合并两个字典的方法,并且做了个简单的性能测试
#!/usr/bin/python
importtime
deff1(d1,d2):
returndict(d1,**d2)
deff2(d1,d2):
returndict(d1.items()+d2.items())
deff3(d1,d2):
d=d1.copy()
d.update(d2)
returnd
deff4(d1,d2):
d1.update(d2)
returnd1
deff5(d1,d2):
d=dict(d1)
d.update(d2)
returnd
deff6(d1,d2):
return(lambdaa,b:(lambdaa_copy:a_copy.update(b)ora_copy)(a.copy()))(d1,d2)
deff7(d1,d2):
d={}
d.update(d1)
d.update(d2)
returnd
deft(f,n):
st=time.time()
foriinrange(1000000):
dic1={'a':'AA','b':'BB','c':'CC'}
dic2={'A':'aa','B':'bb','C':'cc'}
f(dic1,dic2)
et=time.time()
print'%scost:%s'%(n,et-st)
t(f1,'f1')
t(f2,'f2')
t(f3,'f3')
t(f4,'f4')
t(f5,'f5')
t(f6,'f6')
t(f7,'f7')
除了f4方法会对字典d1造成破坏性修改之外,另外的几种方法都是把合并的结果作为新的字典返回。
下面是测试结果:
f1cost:2.382999897 f2cost:4.45399999619 f3cost:3.02100014687 f4cost:1.73000001907 f5cost:2.3710000515 f6cost:2.89700007439 f7cost:2.35600018501
可以看出f4最为高效,如果不需要保留原字典的话推荐使用f4方法。
希望本文所述对大家的Python程序设计有所帮助。
热门推荐
10 求婚朋友祝福语简短精辟
11 名人写信结尾祝福语简短
12 早安毕业文案祝福语简短
13 虎年找钱祝福语大全简短
14 侄儿高考祝福语简短语
15 祝福语大全儿子结婚简短
16 情人中秋祝福语简短
17 娃娃感冒生日祝福语简短
18 怀猪宝宝祝福语简短