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

Cách toán tử * (unpacking) làm việc trên tuple trong Python?


Toán tử sao (*) unpack (giải nén) sequence/collection thành positional arguments. Nếu bạn có tuple và muốn truyền các phần tử làm đối số vị trí cho hàm, thay vì index từng phần tử, dùng *.

Ví dụ

def multiply(a, b):
    return a * b
values = (1, 2)
print(multiply(*values))

Điều này unpack tuple thành:

print(multiply(1, 2))

Kết quả

2

Mở rộng: * dùng trong function call, function definition (def f(*args)), tuple unpacking (a, *b, c = seq), list/tuple/set/dict literals ([1, *list2, 3], {**d1, **d2}).