很抱歉有一个措辞不好的问题,但我基本上是在问我是否有:
for i in range(0,10):
我需要i = 0
在前一点设置还是 for 循环设置i = 0
?
我是 python 的新手,主要使用 C 语言,而在 C 语言中,总是有一部分for
循环设置i = 0
(或其他)。
很抱歉有一个措辞不好的问题,但我基本上是在问我是否有:
for i in range(0,10):
我需要i = 0
在前一点设置还是 for 循环设置i = 0
?
我是 python 的新手,主要使用 C 语言,而在 C 语言中,总是有一部分for
循环设置i = 0
(或其他)。
for
python 中的循环与foreach
其他语言中的循环类似。 range (0, 10)
定义从 0 到 10 的数字列表,不包括 10。然后 for 循环依次设置i
列表中的每个值。所以你不需要i
事先定义或初始化。
不,您不需要i
事先设置任何内容。
在 python 中,您不需要预先声明变量。for
循环只是在循环的每次迭代中从 to 分配下一个值range()
。i
在 C 中,您需要一个for
循环来生成数组的索引,而在 python 中,您通常只需直接循环序列:
for element in somelist:
# do something with element
而不是
for i in range(len(somelist)):
element = somelist[i]
您可以enumerate()
简单地使用 for count 循环。
>>> for i,c in enumerate('abcde') :
... print i,c
...
0 a
1 b
2 c
3 d
4 e
for 的工作方式与您期望的有所不同:它直接在所谓的“迭代器”上“迭代”,而不是在变量上。如果你有一个支持迭代或生成的对象或函数,你可以使用 for 语句。
Range() 实际上是返回一个数字序列,这是 for 语句所采用的。它为每个数字执行其主体。