使用列表中的for循环或while循环

使用列表中的for循环或while循环

问题描述:

所以有一些东西我不理解这两个循环使用列表中的for循环或while循环

如果我有一个列表被叫号码

发现使用人数最多的一个循环我可以:

for number in numbers: 

    if number > largest: 

     largest = number 

,但为什么不:

if number[index] > largest: 

    largest = number[index] 

工作?

,它是相对的,而循环,所以,如果我想要做的事的列表,例如

替换为其他的值,number[index]作品和数量不工作。

+0

数字是值。列表名称是数字,你只能得到数组的索引。 –

因为您已经浏览了列表中的每个元素,而不是实际的列表本身。因此,您不需要索引并访问您已经循环的相同元素。

>>> for i in range(5): 
...  print i 
... 
0 
1 
2 
3 
4 

看看i不是列表,而只是列表中的单个元素?这样做number[index]只是毫无意义的:P

如果你想索引,您可以使用enumerate

>>> L = ['one', 'two', 'three'] 
>>> for i, j in enumerate(L): 
...  print i, j, L[i] 
... 
0 one one 
1 two two 
2 three three 

至于while循环,那么,这是不是情况,你会使用一个。使用for-loop;)。

for number in numbers将元素分配给数字一个接一个。所以number这里是numbers的元素。如果number确实是一个数字。使用number[i]将会出现错误。这是Python的语法。但不适用于while。您必须使用索引来访问列表中的元素。