Python2 Python3字典合并的四种方法,有一种见都没见过。

方法一

适合于python2版本

x = {'a':1, 'b':2}
y = {'c':3, 'd':4}
z = dict(x.items()+y.items())

------------------------------------------------------
z
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
方法二

适合于python2python3版本

x = {'a':1, 'b':2}
y = {'c':3, 'd':4}
x.update(y)  # 这里注意我是直接改变的x变量,具体根据程序逻辑来定,可以用其它变量接受。

------------------------------------------------------
z
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
方法三

适合于python2python3版本

x = {'a':1, 'b':2}
y = {'c':3, 'd':4}
z = {}
for k,v in x.items():
  z[k] = v
for k,v in y.items():
  z[k] = v

------------------------------------------------------
z
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
方法四
x = {'a':1, 'b':2}
y = {'c':3, 'd':4}
z = (x, **y)

------------------------------------------------------
z
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
方法五

适用于Python3.5 以上版本(含3.5

x = {'a':1, 'b':2}
y = {'c':3, 'd':4}
z = {**x, **y}

------------------------------------------------------
z
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
总结

我们来看如果有两个数据中有重复key,方法四,方法五的结果是怎么样的 ,我们来看下面例子:

a = {"A":1,"B":2}
b = {"A":3,"D":4}

------------------------------------------------------
{**a, **b}
Out[11]: {'A': 3, 'B': 2, 'D': 4}  # 这里取的是b中的A,所以b覆盖了a

dict(a,**b)
Out[12]: {'A': 3, 'B': 2, 'D': 4}

总结:dict(a,**b)方法,跟{**a, **b}遇到重复数据,前面的值会被后面的值替代。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值