Vì vậy, rõ ràng là tôi không thể làm điều này bằng Python (2.7):Python: tại sao không (a, b, c) = (* x, 3)
x = (1, 2,)
(a, b, c) = (*x, 3)
Nó có ý nghĩa trong đầu tôi, nhưng cũng ... tôi có thể tạo một hàm:
make_tuple = lambda *elements: tuple(elements)
sau đó tôi có thể làm
(c, a, b) = make_tuple(3, *x)
nhưng không, ví dụ
(a, b, c) = make_tuple(*x, 3)
(a, b, c, d) = make_tuple(*x, *x)
y = [3, 4]
(a, b, c, d) = (*x, *y,)
Vì vậy, những gì tôi yêu cầu là
- là có một lý do để không cho phép điều này? (điều đầu tiên)
- điều gần nhất hoạt động là gì?
đoán hiện tại của tôi cho # 2:
(a, b, c) = x + (3,)
(a, b, c, d) = x + x
(a, b, c, d) = x + tuple(y)
Thú vị, và tuyệt vời Ngoài! – Mark