增量variab中python中的For循环问题

2024-04-19 08:42:36 发布

您现在位置:Python中文网/ 问答频道 /正文

该代码给出输出1-9,而不受i+=5的影响:

for i in range(1, 10):
    print(i)
    i += 5

虽然这段代码给出了i增加5的输出:

for i in range(1, 10):
    print(i)
    i += 5
    print(i)

你能解释一下这种行为吗?你知道吗


Tags: 代码inforrangeprint
1条回答
网友
1楼 · 发布于 2024-04-19 08:42:36

在python for循环中,inext(iterable object)。你知道吗

每次在每个循环中用next(range(5))初始化i。你知道吗

您可以在下面的示例中检查相同的行为

>>> for i in range(5): 
    print(i)
    i+=5    # Here it is adding `5` but it is re-initialized with `next(range(5))`
0           # so that it is printing re-initialized value.
1
2
3
4
>>> for i in range(5):
    i+=5
    print(i)    
5
6
7
8
9

相关问题 更多 >