ITPub博客

首页 > IT职业 > IT图书 > python字典合并操作符的原理

python字典合并操作符的原理

IT图书 作者:davidtim 时间:2021-09-11 09:54:51 0 删除 编辑

1、新的操作符与dict.update方法的关系与列表连接(+)、扩展(+=)操作符与list.extend方法的关系相同。值得注意的是,这与集中|/|=操作符与set.update的关系稍有不同。作明确了允许本地操作符接受更广泛的类型(如list)是更有用的设计,限制二进制操作符的操作数类型(如list)有助于避免复杂的隐藏类型转换引起的错误。

>>> l1 = [1, 2]
>>> l1 + (3,) # 限制操作数的类型,不是列表就报错
Traceback (most recent call last)
...
TypeError: can only concatenate list (not "tuple") to list
>>> l1 += (3,) # 允许就地运算符接受更广泛的类型(如元组)
>>> l1
[1, 2, 3]

2、合并字典发生键冲突时,以最右边的值为准。这符合现有字典的类似操作。

{'a': 1, 'a': 2} # 2 覆盖 1
{**d, **e}       # e覆盖d中相同键所对应的值
d.update(e)      # e覆盖d中相同键所对应的值
d[k] = v         # v 覆盖原有值
{k: v for x in (d, e) for (k, v) in x.items()} # e覆盖d中相同键所对应的值

以上就是python字典合并操作符的原理,希望对大家有所帮助。更多编程基础知识学习:python学习网

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3349/viewspace-2829878/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: java关键字是什么
请登录后发表评论 登录
全部评论

注册时间:2012-11-06

  • 博文量
    69
  • 访问量
    20645