1
对不起,如果这是显而易见的,但我对python编程很陌生,为什么这个程序不生成素数列表,其中大多数似乎是素数,但有有些不是。python素数生成器的问题
#!/usr/bin/env python
print ("Prime Numbers")
Number = 2
while True:
Test = 2
while Test < Number:
if Number % Test == 0:
Number = Number + 1
else:
Test = Test + 1
print (str(Number) + " is a prime number!")
Number = Number + 1
如果按照[PEP 8](http://www.python.org/dev/peps/pep-0008/#方法名称和实例变量)与你的变量命名约定,人们会发现它更容易理解你的代码。我觉得'Test'和'Number'应该是类,而不是实例变量。 – robert 2012-07-06 11:39:33
尝试构造一个更多的程序,做一个函数,每次调用返回一个素数(在需要的地方添加yield/return语句) – KurzedMetal 2012-07-06 11:39:57
小提示 - 1]短语'a = a + 1'可以重写为'a + = 1',除了更清洁外,也可能更快。 2]在通过强力分割检查对素数进行测试时,您只需检查数字“
Hooked
2012-07-06 13:14:43