我做了一个小测验,以下代码的输出结果是
我明白循环在到达
1 1
而不是1 1 2 3
。答案解释是当代码遇到break
(也就是到达2
)时,循环停止。我明白循环在到达
2
时停止了,但是由于print()
与if()
语句具有相同的缩进,我认为它们是独立执行的(但仍然在for
循环之下)。因此,当number
达到2
时,即使循环停止,它仍将执行print()
,因为它仍在for
循环之下。因此,结果是1 1 2 3
。而无论if()
语句如何,结果都是相同的。numbers = [1, 1, 2, 3]
for number in numbers:
if number % 2 == 0:
break
print(number)