递归功能无法正常工作

递归功能无法正常工作,第1张

递归功能无法正常工作

在这两个

elif
块中,进行递归调用后不会返回任何值。您需要
return
在递归调用之前先输入,
iterated
例如
returnself.iterated(n/2)
。如果您没有明确声明
return
,该函数将返回
None

这样可以解决此问题,但是有一种方法可以使您的代码更简单:您实际上不需要member

length
。相反,您可以在递归调用的结果中加1:

def iterated(n):    if n==1:        return 1    elif n%2==0:        return 1 + iterated(n/2)    else:        return 1 + iterated(3*n+1)print(iterated(5))

这不需要在类中,因为不需要任何成员。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5647231.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存