我想知道如何从这样的循环中退出:
for a in range(95):
for b in range(95):
for c in range(95):
for d in range(95):
...
do some computings
...
if condition:
task completed
任务完成后,所有循环和计算将继续。它们必须被破坏,但我不知道如何-“任务完成”之后的单个break语句仅在最里面的for循环结束,但是它将被多次调用-因此我们一无所获。
在CI中会做a = b = c = d = 95,但在python中是行不通的。当然,我可以改用while循环,但是然后我必须使用X + = 1语句,这看起来很糟糕。
有什么帮助吗?
关于循环:我使用它使用蛮力破解4字符的密码。这不是真正的目的-仅用于测试。
使用itertools产品:
from itertools import product
for a, b, c, d in product(range(95), range(95), range(95), range(95)):
print a, b, c, d
if a == 1: break
较短的版本,感谢Ashwini:
for a, b, c, d in product(range(95), repeat=4):
print a, b, c, d
if a == 1: break
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句