順序問題,這樣子為什么不可以呢
sum = 0
x = 0
while True:
? ? x = x + 1
? ? if x % 2 ==0:
? ? ? ? continue
? ? sum = sum + x
? ? if x > 100:
? ? ? ? break
? ??
print sum
sum = 0
x = 0
while True:
? ? x = x + 1
? ? if x % 2 ==0:
? ? ? ? continue
? ? sum = sum + x
? ? if x > 100:
? ? ? ? break
? ??
print sum
2019-01-27
舉報
2019-01-31
因為順序的先后影響判斷的問題:如果先執行sum=sum+x,后判斷if x > 100: break。相當于最后循環到sum = sum +101,后面判斷101大于100,退出整個運算。
同理如果是先判斷if x > 100: break ,后執行sum=sum+x,那么當循環到101的時候,Python就已經直接退出這個運算,求和sum涉及不到101這個數。
2019-01-27
continue 是跳過這次循環,你這個if? > 100: 要寫在continue的前面吧