Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何控制for循环中的迭代器值?_Python - Fatal编程技术网

Python 如何控制for循环中的迭代器值?

Python 如何控制for循环中的迭代器值?,python,Python,我想用Python重现这个JavaScript bucle,但我不确定如何继续 for (i=0;i<toks.length && toks[i]!='\r'; i+=10) for(i=0;i您可以使用while编写它 i = 0 while(i < len(toks) and toks[i] != '\r'): i += 10 i=0 而(i输出将为3,5,7。该想法还与从toks[i]到toks[i+9]的9个元素交互,因此我认为这在这种情况下无

我想用Python重现这个JavaScript bucle,但我不确定如何继续

for (i=0;i<toks.length && toks[i]!='\r'; i+=10)

for(i=0;i您可以使用while编写它

i = 0

while(i < len(toks) and toks[i] != '\r'):
    i += 10 
i=0
而(i
如果要为每个循环向迭代器变量添加10,只需将其作为参数传递给range函数即可:

for i in range(0, MAX_ITERATIONS, 10):
    pass
range函数接受3个参数:初始化迭代器变量的值、最大迭代次数和为每个循环添加到迭代器变量的值(默认值为1)

python中类似的代码类似于:

for i in range(0, len(toks), 10):
    if toks[i] == '\r':
        break

您可以使用范围的第三个参数配置增量,然后检查循环中的退出条件

toks=列表(范围(100))
toks[30]='\r'
对于范围内的i(0,len(toks),10):
如果toks[i]='\r':
打破
打印(toks[i])

就个人而言,我不喜欢使用索引进行循环,因此我建议python
使用
中断
状态(停止循环)进行
循环。对于每第10个
循环逻辑,您可以使用
toks[::10]

因此,最终的代码是:

toks[::10]中v的
:
如果v='\r':
打破
印刷品(五)

我不知道“bucle”是什么,它是指一段没有任何作用的代码吗?循环的主体是不相关的。我只想知道如何控制Python中我在问题中显示的索引。@JohnZwinck
bucle
是西班牙语,意思是我假定的
loop
。参见以下语法:-范围内的x(,步进函数):示例:-对于范围(3,8,2)中的x:-->输出将为3,5,7。该想法还与从toks[i]到toks[i+9]的9个元素交互,因此我认为这在这种情况下无效。我如何使用此方法访问这些元素?