当我将其绑定到任何在线代码执行器中时,下面的代码运行良好,但是在我编写该代码的Jupyter笔记本中,我得到-'int'对象不可调用(请参阅最后一行)
def is_prime(x):
if x <= 1:
return False
elif x <= 3:
return True
elif x % 2 == 0:
return False
else:
for i in range(3, int((x**0.5)+1), 2):
if x % i == 0:
return False
return True
def primecount(ab):
import itertools
a,b = ab
for i in itertools.count():
n = i*i + i*a + b
if not is_prime(n):
return i
ans = max(((a, b) for a in range(-999,1000) for b in range(2,1000)), key=primecount)
---> 26 ans = max(((a,b对于范围(-999,1000)对于b在范围(2,1000)),key = primecount)
TypeError:“ int”对象不可调用
答案 0 :(得分:0)
因为您已经将itertools导入了称为primecount的函数中,请剪切并粘贴到代码的顶部(将其粘贴到程序的开头),并且无法像这样定义for循环的范围,请参考循环python3.x