Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.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增量迭代循环_Python_Loops_Iteration - Fatal编程技术网

Python增量迭代循环

Python增量迭代循环,python,loops,iteration,Python,Loops,Iteration,这是我的密码 for i in range(0,5): intl = i print(intl) intn = i+1 print(intn) i+=1 print("---------") 我得到的输出如下 0 1 --------- 1 2 --------- 2 3 --------- 3 4 --------- 4 5 --------- 相反,我需要得到 0

这是我的密码

for i in range(0,5):
        intl = i
        print(intl)
        intn = i+1
        print(intn)    
        i+=1
        print("---------")
我得到的输出如下

0
1
---------
1
2
---------
2
3
---------
3
4
---------
4
5
---------
相反,我需要得到

0
1
---------
2
3
---------
4
5
---------

对不起,我弄错了。您要查找的是
range()
的步长参数,如下所示:

for i in range(0,5,2):
        intl = i
        print(intl)
        intn = i+1
        print(intn)    
        print("---------") 

现在,对于每个循环,它将跳过一个数字(因此i=0,然后i=2,然后i=4)。在for循环中修改变量
i
时,您将更改当前循环中活动的
i
的本地版本。Python实际上并不使用
i
从一个可写表中获取下一项,因此手动更改它对循环没有任何作用。

每当
i
的下一个值可被2整除时,此代码将打印
'-'

x = 5

for i in range(0, x+1):
    print(i)
    if (i+1) % 2 == 0:
        print('---------')

您可以简单地执行以下操作:

for i in range(0, 5, 2):
    intl = i
    intn = i+1
    print(intl)
    print(intn)    
    print("---------")
现在,范围函数的步骤为2。步骤是每个数字之间的差值。默认情况下,它是1

for i in range(0, 5):
    print(i)
返回:

0
1
2
3
4
0
2
4
返回:

0
1
2
3
4
0
2
4
在代码中,您执行了以下操作:

i+=1

这不起作用,因为变量i是由for循环在每次迭代中设置的。这意味着无论您如何处理i变量,在下一次迭代中,它将比上次多1。

您正在更改for循环中i的值(由for循环设置)。那不行。如果删除该行,所有内容都将以与以前相同的方式工作。不,我仍然获得相同的输出..:/但这是因为范围是(0,6)。此范围将根据另一个变量而有所不同。所以我不能手动给出范围。相反,我用这个变量替换范围。如果是这样的话,这就行不通了。对于范围内的i(gri_tables.n):intl=i@PranavHosangadi公平地说,我已经改变了我的答案,并给出了更多的解释和道歉。但这是因为范围是(0,6)。此范围将根据另一个变量而有所不同。所以我不能手动给出范围。相反,我用这个变量替换范围。如果是这样的话,这就行不通了。对于范围内的i(gri_tables.n):intl=iwell,如果它基于变量“x”而不同,则可以对范围内的i(0,x+1)执行此操作