gpt4 book ai didi

python - 为什么在 Python 中返回 'NoneType'?

转载 作者:行者123 更新时间:2023-11-28 19:32:16 26 4
gpt4 key购买 nike

我有一个代码基本上解决了 Project Euler 中的一个问题,旨在找出前 20 个自然数的 LCM。

def GCD(a, b):              #Euclid's algorithim
if (b == 0):
return a
else:
GCD(b, a % b)

def LCM(a, b): #LCM(a,b) = a*b/GCD(a,b)
x = GCD(a, b)
return ((a * b)/x)

def RFIND(a, b):
if (b == 20):
return a
else:
RFIND(LCM(a, b), b + 1)

print RFIND(2, 1)

但是我在运行时遇到错误。

    return ((a * b)/x)
TypeError: unsupported operand type(s) for /: 'int' and 'NoneType'

我可以知道为什么吗?

最佳答案

尝试

def GCD(a, b):              #Euclid's algorithim
if (b == 0):
return a
else:
return GCD(b, a % b)

您必须返回递归调用返回的值。 RFIND 也有类似的问题。

关于python - 为什么在 Python 中返回 'NoneType'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4714764/

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