Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Gộp 2 Dictionary trong một biểu thức Python

Python 3.5+ hỗ trợ unpacking dict trong dict literal. Python 3.9+ thêm toán tử |.

1. Dict unpacking (Python 3.5+)

a = {1: 'a', 2: 'b', 3: 'c'}
b = {'x': 1, 'y': 2, 'z': 3}
c = {**a, **b}
print(c)  # {1: 'a', 2: 'b', 3: 'c', 'x': 1, 'y': 2, 'z': 3}

Key trùng: dict sau ghi đè dict trước.

2. Toán tử union | (Python 3.9+)

c = a | b
# In-place union
a |= b  # tương đương a.update(b)

3. update() (tất cả version, in-place)

a.update(b)  # a bị thay đổi, trả về None

Khuyến nghị: Python 3.9+ dùng | (tạo mới) hoặc |= (in-place); version cũ dùng {**a, **b}.