用慣C++/Java 的for 循環,很自然地以爲下面的code 在 python 也是OK
a = [1, 2, 3, 4]
for i in range(4):
if a[i] == 5:
break
if i >= 4:
print "Hello Python"
邏輯上看着也是對的,但字串 "Hello Python" 卻始終打不出來。這其實就是一個坑。
在Python 中,
for i in range(4):
pass
#等價於
for i in [0, 1, 2, 3]:
pass
所以 i 是不會大於或等於 4 的。