Python代码,上楼梯,数字一大了就不动,不知道哪里出错了

Python代码上楼梯一次只能上一阶或者两阶,数量为n一共有多少种上法,阶数少了没事多了就不动了,不知道为什么。

def upstairs(num):
    if num==1:
        return 1
    if num==2:
        return 2
    else:
        return upstairs(num-1)+upstairs(num-2)
num = input("请输入台阶级数:")
try:
    num = int(num)
    steps = upstairs(num) 
    print("一共有",steps,"种方法上台阶")
except Exception as e:
    print("不是数字")

img

递归函数虽然简单,但是对计算机的算力要求比较大,不适合太大的数据,你输入的数据太大了,超过50就很难实现了。不建议用递归函数,

后台在疯狂计算ing,等着吧