python中的break语句2.6
问题描述:
primes = set([1,2,3])
for r in range(1,20):
if (r not in primes):
for q in range(2,r):
if r % q == 0:
break
primes.add(r)
print primes
set([1, 2, 3, 5, 7, 9, 11, 13, 15, 17, 19])
如何将9和15从素数列表中排除?python中的break语句2.6
答
使用for-else循环:
primes = set([1,2,3])
for r in range(1,20):
if (r not in primes):
for q in range(2,r):
if r % q == 0:
break
else:
#this will execute only if the for-loop completed without any breaks
primes.add(r)
print primes
#set([1, 2, 3, 5, 7, 11, 13, 17, 19])