def func1(x,y):
for i in range(x,y+1):
for j in range(2,int(i)):
if i%j==0:
break
else:
print(i,True)
break
print(3,15)
结果为
3 True
5 True
7 True
9 True
11 True
13 True
15 True
为什么9,15也是质数了,求就在这串代码的基础上更改。。
缩进不对,else和for对齐就可以了,第二个break去掉。另外,你在函数里有了print,调用的时候就不需要print了
def func1(x,y):
for i in range(x,y+1):
for j in range(2,i):
if i%j==0:
break
else:
print(i,True)
func1(3,15)
def func1(x,y):
for i in range(x,y+1):
for j in range(2,i):
if i%j==0:
break
if j==i-1:
print(i,True)
func1(3,15)
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!