我有一个填充随机数的列表,我想从此列表中返回素数。所以,我创建了这些功能:从Python中随机数列表过滤素数的最有效方法
def is_prime(number):
for i in range(2, int(sqrt(number)) + 1):
if number % i == 0:
return False
return number > 1
而且
def filter_primes(general_list):
return set(filter(is_prime, general_list))
但我想提高性能,所以我怎么能做到这一点?
这里有*吨的解决方案,特别是在SO上,显示了主要检查的实现。你有没有检查过他们? – idjaw
不知道这是否有助于提高性能,因为我没有时间去测试任何东西,但是如果number> 1,则返回True,否则False可以归结为:return number> 1。 –
是的,有大量的素数检查解决方案,但它们都不适用于随机数列表的场景。 – flpn