在for循环for item in lists
中,item
是否代表当前索引,与for i in range()
循环一样?
答案 0 :(得分:4)
Python中的
for
语句与您在C或Pascal中使用的语句略有不同。而不是总是迭代数字的算术级数(如在Pascal中),或者让用户能够定义迭代步骤和停止条件(如C), Python的for语句迭代任何序列的项目(列表或字符串),按顺序出现在序列中。例如(没有双关语):>>> # Measure some strings: ... words = ['cat', 'window', 'defenestrate'] >>> for w in words: ... print w, len(w) ... cat 3 window 6 defenestrate 12
在您的情况下,当您使用range
时,item
代表range
返回的数字列表中的各个项目。
答案 1 :(得分:1)
使用for a in b...
语法,始终为b
中的每个项目分配a。因此,i
中的for i in range(x)
仅分配给range(x)
生成的列表中的每个项目。
>>> for i in range(5):
... print i
...
0
1
2
3
4
>>> range(5)
[0, 1, 2, 3, 4]
>>> for item in [0, 1, 2, 3, 4]:
... print item
...
0
1
2
3
4
>>>
item
代表列表中的每个项目。答案 2 :(得分:0)
在英语中,它就像for every item in list
一样。其他一些语言使用for each
来显示此内容。