Python 3.x 无效语法;第n素数 def primetest(x): 如果x
每当我尝试运行它时,它都会说“print nthprime(10001)”是无效语法Python 3.x 无效语法;第n素数 def primetest(x): 如果x,python-3.x,Python 3.x,每当我尝试运行它时,它都会说“print nthprime(10001)”是无效语法 -素数测试是测试一个数是否为素数,nthprime创建一个素数列表,长度为一定长度,然后返回列表的最后一个元素。print是Python 3中的函数,而不是语句。您应该将最后一行代码更改为: def primetest(x): if x < 2: return False if x == 2: return True if x %
-素数测试是测试一个数是否为素数,nthprime创建一个素数列表,长度为一定长度,然后返回列表的最后一个元素。
print
是Python 3中的函数,而不是语句。您应该将最后一行代码更改为:
def primetest(x):
if x < 2:
return False
if x == 2:
return True
if x % 2 == 0:
return False
for i in range(3,(x**0.5)+1):
if x % i == 0:
return False
return True
def nthprime(n):
primes = []
x = 2
while len(primes) < n:
if primetest(x) == True:
primes.append(x)
x = x + 1
return list(-1)
print nthprime(10001)
print
是Python 3中的函数,而不是语句。您应该将最后一行代码更改为:
def primetest(x):
if x < 2:
return False
if x == 2:
return True
if x % 2 == 0:
return False
for i in range(3,(x**0.5)+1):
if x % i == 0:
return False
return True
def nthprime(n):
primes = []
x = 2
while len(primes) < n:
if primetest(x) == True:
primes.append(x)
x = x + 1
return list(-1)
print nthprime(10001)
在代码中:
print(nthprime(10001))
变成这样:
for i in range(3,(x**0.5)+1):
在代码中:
print(nthprime(10001))
变成这样:
for i in range(3,(x**0.5)+1):