, () / [] . :
a, b, c, (d, (e, f)) = v
print(a, b, c, d, e, f)
1 2 3 4 5 6
, , [] :
a, b, c, [d, [e, f]] = v
print(a, b, c, d, e, f)
1 2 3 4 5 6
, , .
Python v 3 , (d, (e, f)) d, (e, f) .
, dis dis.dis:
dis.dis('a, b, c, (d, (e, f)) = v')
1 0 LOAD_NAME 0 (v)
3 UNPACK_SEQUENCE 4 # <- first unpack
6 STORE_NAME 1 (a)
9 STORE_NAME 2 (b)
12 STORE_NAME 3 (c)
15 UNPACK_SEQUENCE 2 # <- second unpack
18 STORE_NAME 4 (d)
21 UNPACK_SEQUENCE 2 # <- third unpack
24 STORE_NAME 5 (e)
27 STORE_NAME 6 (f)
30 LOAD_CONST 0 (None)
33 RETURN_VALUE
, , (target-list):
v = [1, [2, [3, [4, 5]]]]
[a, [b, [c, [d, e]]]] = v
print(a, b, c, d, e)
1 2 3 4 5
[], , , , , .