为了账号安全,请及时绑定邮箱和手机立即绑定

用递归写的,为啥不对

class Fib(object):


    def __init__(self, num):

        self.num=num

        if self.num==1:

            return 0

        if self.num==2:

            return 1

        else:

            return Fib(self.num-2)+Fib(self.num-1)

        

    def __str__(self):

        return [Fib[v]for v in range(1,self.num+1)]


    def __len__(self):

        return self.num


f = Fib(10)

print f

print len(f)


正在回答

2 回答

__init__不能有返回值的,他只是一个初始化的方法

0 回复 有任何疑惑可以回复我~

你的else悬空了。。。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

用递归写的,为啥不对

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信