num = 5
if num > 2:
print(num)
num-=1
print(num)
对于第一次迭代 num =5 和 5>2 num =4,对于第二次迭代 num = 4 和 4>2 num=3。 为什么第三次迭代没有发生?编译代码时,输出为 5,4,但我预期为 5,4,3,因为 3 大于 2。任何人都可以帮我解决这个问题。
谢谢
答案 0 :(得分:0)
因为 if
不是迭代命令,它是一个选择命令。
此处的 if
语句将只运行一次,5
在 if
内输出,4
由最后的 print
语句输出, 之后 if
完成。
如果你想要迭代,你需要while
,比如(没有最后的print
,给出5, 4, 3
):
num = 5
while num > 2:
print(num)
num -= 1