我见过很多不同的方式来同时突破两个嵌套循环,但是对于我的代码来说最快和最简单的方法是什么?Double Break out嵌套循环
primes = [2]
for a in range(3, 500, 2):
for b in range(2, int(a ** 0.5 + 0.5)):
if a % b != 0:
primes.append(a)
if a % b == 0:
[x for x in primes if x != a]
# double break
我不是很确定你想要实现这个代码是什么,但我敢肯定你写不这样做的。列表理解没有做任何事情,名为“素数”的列表不会包含素数。考虑编写一个函数'is_prime(p)'来测试单个值是否为素数,然后就不需要从嵌套循环中分离出来。 – Duncan 2013-03-02 12:45:30
我知道@Duncan,我现在已经意识到了,不过谢谢你的答案 – awsomeguy 2013-03-02 12:52:07
LewisC,我有一个关于你的代码算法的答案,而不是双重嵌套循环的问题。但此线程已关闭。我怎么能把它发布给你? – eyquem 2013-03-03 22:38:43