6.00x edX中有一个练习,他们提供的答案建议如下:
def genPrimes():
primes = [] # primes generated so far
last = 1 # last number tried
while True:
last += 1
for p in primes:
if last % p == 0:
break
else:
primes.append(last)
yield last
查看标识,我可以清楚地看到这个 ELSE 与 IF 无关。我认为这是一个错误,但是当我执行时,代码很好,我无法理解发生了什么,ELSE 是做什么的?