如何在 Python 中將兩個字典合併到一個表達式中?
問題:
將兩個字典合併為一個新字典,第二個字典中的值會覆蓋第二個字典中的值首先。
可能的解決方案:
在Python 3.9.0 或更高版本:
z = x | y
在Python 3.5或更大:
z = {**x, **y}
在Python 2、3.4 或更低版本:
def merge_two_dicts(x, y): z = x.copy() # Start with keys and values of x z.update(y) # Modifies z with keys and values of y return z z = merge_two_dicts(x, y)
解釋:
解釋:
解釋:
解釋:
1. Python 3.9.0或更高版本:
管道運算符 (|) 在 PEP-584 中引入,並使用字典解包語法組合兩個字典。3. Python 2、3.4 或更低版本:
在3.5 之前的Python 版本中,您必須使用copy() 和update() 方法手動合併字典:
copy () 建立原始字典的淺表副本。 update() 使用第二個字典中的鍵值對更新複製的字典字典。 注意:使用字典解包語法({x, y}) 比使用dicta 效能更高理解式( {k: v for d in (x, y) for k, v in d.items()}) 或itertools 中的chain() 函數。以上是如何在Python中高效率地合併兩個字典?的詳細內容。更多資訊請關注PHP中文網其他相關文章!