gpt4 book ai didi

python - 虽然循环在 Python 中无法正常工作

转载 作者:太空宇宙 更新时间:2023-11-04 10:27:53 26 4
gpt4 key购买 nike

所以我试图找到第 6 个素数,但 getPrime 中的 while 循环无法正常工作。它应该在 count 大于 num 时结束,但事实并非如此。如果您能帮我找出原因,那就太好了。

import math

def isPrime(num):
if num == 1:
return False
if num % 2 == 0 and num > 2:
return False
for i in range(3, int(math.sqrt(num))+1, 2):
if num % i == 0:
return False
return True

def getPrime(num):
count = 1
while count < num:
for i in range(1, 20):
#print "check"
if isPrime(i):
print "prime", i
count += 1
print "count", count
else:
continue
print i
return i

getPrime(6)

最佳答案

getPrime()功能,当isPrime(i)返回 False , 你没有递增 count多变的。所以 while count < num循环卡在那个点。

更新:嗯,这是我看代码的第一印象。但后来我注意到嵌套循环。所以我可能误读了发生的事情。

此时我推荐的是在调试器中单步调试代码,这样您就可以亲眼看到发生了什么。您有可用的 Python 调试器吗?

如果您有一个好的调试器并且知道如何使用它,您几乎可以自己回答任何类似的问题。这样您就不必等待您在 Stack Overflow 上的 friend 来猜测出了什么问题! :-)

关于python - 虽然循环在 Python 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28426834/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com