python字典合併運算子的原理
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字典合併運算子的原理,希望對大家有所幫助。更多程式設計基礎知識學習:
本文教程操作環境:windows7系統、Python 3.9.1,DELL G3電腦。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3349/viewspace-2829878/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- php---空合併運算子PHP
- python字典合併的使用注意Python
- Python合併字典的七種方式!Python
- Python學習-算術運算子,賦值運算子和複合運算子Python賦值
- python技巧 合併兩個字典Python
- PHP7 ?? 與 ?: 的作用和區別(null合併運算子, null條件運算子)PHPNull
- PHP7 null 合併運算子注意事項PHPNull
- python的運算子Python
- python3.9中字典合併如何操作?Python
- 曾經踩過的 PHP 一個小坑:null 合併運算子 ??PHPNull
- Hbase-原理-region合併和hfile的合併(大合併、小合併)
- Python運算子Python
- python中的運算子Python
- Python 運算子優先順序 運算子Python
- Python的運算子的列表Python
- Python 位運算子Python
- Python 海象運算子Python
- python身份運算子Python
- Python 中的特殊運算子Python
- 運算子 運算子
- MySQL的四種運算子(算術運算子、比較運算子、邏輯運算子和位運算子)MySql
- Python學習-比較運算子和邏輯運算子Python
- python 的三元運算子Python
- Python3中的運算子Python
- Python 運算子過載Python
- 8.Golang中的運算子-算術運算子、關係運算子、邏輯運算子、賦值運算子Golang賦值
- Python 字典實現原理Python
- python進階(24)Python字典的底層原理以及字典效率Python
- 運算子的關係,什麼叫一元運算子,二元運算子,三元運算子,運算子優先順序,以及運算子的
- php運算子 比較運算子 邏輯運算子 三元運算子PHP
- javascript中&&運算子和||運算子的使用JavaScript
- 算術運算子裡的特殊運算子
- 運算子-賦值運算子賦值
- Python3 * 和 ** 運算子Python
- python之運算子過載Python
- python學習之運算子Python
- Python 變數與運算子Python變數
- Python——運算子過載(1)Python