- My post explains
[]
and()
for variables in variable assignment. - My post explains variable assignment.
- My post explains iterable unpacking in variable assignment.
- My post explains
*
for iterable unpacking in variable assignment.
You can use one or more []
and ()
for one or more variables in a for
statement as shown below:
mylist = [[[3]], [[5]], [[7]]] for v1 in mylist: print(v1) # [[3]] # [[5]] # [[7]] for [v1] in mylist: print(v1) # [3] # [5] # [7] for [[v1]] in mylist: print(v1) # 3 # 5 # 7
mytuple = (((3,),), ((5,),), ((7,),),) for v1 in mytuple: print(v1) for (v1) in mytuple: print(v1) # ((3,),) # ((5,),) # ((7,),) for (v1,) in mytuple: print(v1) # (3,) # (5,) # (7,) for ((v1,),) in mytuple: print(v1) # 3 # 5 # 7
mylist = [[ 0, 1, [ 2, 3, [ 4, 5]]], [ 6, 7, [ 8, 9, [10, 11]]], [12, 13, [14, 15, [16, 17]]], [18, 19, [20, 21, [22, 23]]]] for v1 in mylist: print(v1) # [ 0, 1, [ 2, 3, [ 4, 5]]] # [ 6, 7, [ 8, 9, [10, 11]]] # [12, 13, [14, 15, [16, 17]]] # [18, 19, [20, 21, [22, 23]]] for v1, v2, v3 in mylist: print(v1, v2, v3) for [v1, v2, v3] in mylist: print(v1, v2, v3) # 0 1 [ 2, 3, [ 4, 5]] # 6 7 [ 8, 9, [10, 11]] # 12 13 [14, 15, [16, 17]] # 18 19 [20, 21, [22, 23]] for [v1, v2, [v3, v4, v5]] in mylist: print(v1, v2, v3, v4, v5) # 0 1 2 3 [ 4, 5] # 6 7 8 9 [10, 11] # 12 13 14 15 [16, 17] # 18 19 20 21 [22, 23] for [v1, v2, [v3, v4, [v5, v6]]] in mylist: print(v1, v2, v3, v4, v5, v6) # 0 1 2 3 4 5 # 6 7 8 9 10 11 # 12 13 14 15 16 17 # 18 19 20 21 22 23
mytuple = (( 0, 1, ( 2, 3, ( 4, 5))), ( 6, 7, ( 8, 9, (10, 11))), (12, 13, (14, 15, (16, 17))), (18, 19, (20, 21, (22, 23)))) for v1 in mytuple: print(v1) for (v1) in mytuple: print(v1) # ( 0, 1, ( 2, 3, ( 4, 5))) # ( 6, 7, ( 8, 9, (10, 11))) # (12, 13, (14, 15, (16, 17))) # (18, 19, (20, 21, (22, 23))) for v1, v2, v3 in mytuple: print(v1, v2, v3) for (v1, v2, v3) in mytuple: print(v1, v2, v3) # 0 1 ( 2, 3, ( 4, 5)) # 6 7 ( 8, 9, (10, 11)) # 12 13 (14, 15, (16, 17)) # 18 19 (20, 21, (22, 23)) for (v1, v2, (v3, v4, v5)) in mytuple: print(v1, v2, v3, v4, v5) # 0 1 2 3 ( 4, 5) # 6 7 8 9 (10, 11) # 12 13 14 15 (16, 17) # 18 19 20 21 (22, 23) for (v1, v2, (v3, v4, (v5, v6))) in mytuple: print(v1, v2, v3, v4, v5, v6) # 0 1 2 3 4 5 # 6 7 8 9 10 11 # 12 13 14 15 16 17 # 18 19 20 21 22 23
Only one *variable
can be used in each []
and ()
as shown below:
mylist = [[ 0, 1, [ 2, 3, [ 4, 5]]], [ 6, 7, [ 8, 9, [10, 11]]], [12, 13, [14, 15, [16, 17]]], [18, 19, [20, 21, [22, 23]]]] for v1 in mylist: print(v1) for *v1, in mylist: print(v1) # [ 0, 1, [ 2, 3, [ 4, 5]]] # [ 6, 7, [ 8, 9, [10, 11]]] # [12, 13, [14, 15, [16, 17]]] # [18, 19, [20, 21, [22, 23]]] for v1, *v2, v3 in mylist: print(v1, v2, v3) for [v1, *v2, v3] in mylist: print(v1, v2, v3) for (v1, *v2, v3) in mylist: print(v1, v2, v3) # 0 [ 1] [ 2, 3, [ 4, 5]] # 6 [ 7] [ 8, 9, [10, 11]] # 12 [13] [14, 15, [16, 17]] # 18 [19] [20, 21, [22, 23]] for [v1, *v2, [*v3, v4, v5]] in mylist: print(v1, v2, v3, v4, v5) for (v1, *v2, (*v3, v4, v5)) in mylist: print(v1, v2, v3, v4, v5) # 0 [ 1] [ 2] 3 [ 4, 5] # 6 [ 7] [ 8] 9 [10, 11] # 12 [13] [14] 15 [16, 17] # 18 [19] [20] 21 [22, 23] for [v1, *v2, [*v3, v4, [v5, *v6]]] in mylist: print(v1, v2, v3, v4, v5, v6) for (v1, *v2, (*v3, v4, (v5, *v6))) in mylist: print(v1, v2, v3, v4, v5, v6) # 0 [ 1] [ 2] 3 4 [ 5] # 6 [ 7] [ 8] 9 10 [11] # 12 [13] [14] 15 16 [17] # 18 [19] [20] 21 22 [23]
mytuple = (( 0, 1, ( 2, 3, ( 4, 5))), ( 6, 7, ( 8, 9, (10, 11))), (12, 13, (14, 15, (16, 17))), (18, 19, (20, 21, (22, 23)))) for v1 in mytuple: print(v1) # ( 0, 1, ( 2, 3, ( 4, 5))) # ( 6, 7, ( 8, 9, (10, 11))) # (12, 13, (14, 15, (16, 17))) # (18, 19, (20, 21, (22, 23))) for *v1, in mytuple: print(v1) # [ 0, 1, ( 2, 3, ( 4, 5))] # [ 6, 7, ( 8, 9, (10, 11))] # [12, 13, (14, 15, (16, 17))] # [18, 19, (20, 21, (22, 23))] for v1, *v2, v3 in mytuple: print(v1, v2, v3) for [v1, *v2, v3] in mytuple: print(v1, v2, v3) for (v1, *v2, v3) in mytuple: print(v1, v2, v3) # 0 [ 1] ( 2, 3, ( 4, 5)) # 6 [ 7] ( 8, 9, (10, 11)) # 12 [13] (14, 15, (16, 17)) # 18 [19] (20, 21, (22, 23)) for [v1, *v2, [*v3, v4, v5]] in mytuple: print(v1, v2, v3, v4, v5) for (v1, *v2, (*v3, v4, v5)) in mytuple: print(v1, v2, v3, v4, v5) # 0 [ 1] [ 2] 3 ( 4, 5) # 6 [ 7] [ 8] 9 (10, 11) # 12 [13] [14] 15 (16, 17) # 18 [19] [20] 21 (22, 23) for [v1, *v2, [*v3, v4, [v5, *v6]]] in mytuple: print(v1, v2, v3, v4, v5, v6) for (v1, *v2, (*v3, v4, (v5, *v6))) in mytuple: print(v1, v2, v3, v4, v5, v6) # 0 [ 1] [ 2] 3 4 [ 5] # 6 [ 7] [ 8] 9 10 [11] # 12 [13] [14] 15 16 [17] # 18 [19] [20] 21 22 [23]
Top comments (0)