a=['one','two'] for p,q in a: print p,q
出错
a=[['one','tow']] for p,q in a: print p,q
这样就可以第一种我一直就认为是这样的:a的one,two分别赋值给p,q。不然得怎么理解?
人生最曼妙的风景,竟是内心的淡定与从容!
在Python中,for循環運行列表(或生成器)中的每個元素。 所以第一個循環的正確形式是:
for x in a: print(x)
此外,Python裡我們能寫:
x, y = (1, 2)
以後x是1,y是2。我們也能寫:
x, y = [1, 2]
具有相同的效果。 如果我們寫:x, y = 1就出了錯誤,在你的一個for循環裡除了一摸一樣的錯誤。
x, y = 1
在第二個f例子裡列表[['one', 'two']]只有个元素,就是['one', 'two']。for循环要跑一次,这一次p, q就是['one', 'two'],類似於上面的例子.
[['one', 'two']]
['one', 'two']
p, q
第一個例子裡a有兩個元素, 分別是'one','two'. 賦值在p,q上是不確定的,第二個例子裡a有一個元素['one','two '],順序確定。
p, q = [x, y] //可行 p, q = x, y//不确定
在Python中,for循環運行列表(或生成器)中的每個元素。 所以第一個循環的正確形式是:
此外,Python裡我們能寫:
以後x是1,y是2。我們也能寫:
具有相同的效果。
如果我們寫:
x, y = 1
就出了錯誤,在你的一個for循環裡除了一摸一樣的錯誤。在第二個f例子裡列表
[['one', 'two']]
只有个元素,就是['one', 'two']
。for循环要跑一次,这一次p, q
就是['one', 'two']
,類似於上面的例子.第一個例子裡a有兩個元素, 分別是'one','two'. 賦值在p,q上是不確定的,
第二個例子裡a有一個元素['one','two '],順序確定。