【发布时间】:2020-07-08 16:07:45
【问题描述】:
随着我越来越习惯于用 Python 编写脚本,我编写了一个脚本,它通过尝试将每个数字除以每个数字的一个范围内来找到素数(有点像蛮力哈哈)。 它有效,但我想让这个过程更快、更高效。
我的代码:
count = 0
for i in range(2,1000):
j = 2
while j < 1000:
if i%j==0:
count = count + 1
j = j + 1
if count == 1:
print(i)
count = 0
解释:
我检查并存储在count 中,一个数字可以被除多少次。
如果在检查结束时count 等于 1,则表示该数字是素数(仅被自身除)。
我现在想要的是停止检查当“count”变量超过 1(2 或更多)时数字可以被除多少次的过程。我该怎么做?
我想用try 和except 做点什么,但不知道是什么...
【问题讨论】:
-
你试过
break吗? -
请永远不要使用 try/except 来处理您的应用程序的流程或跳出循环。它们用于处理错误,而不是用于定义代码的执行流程。
标签: python python-3.x math primes brute-force