Python Fibonacci For循环陷入困境

时间:2019-07-02 08:03:56

标签: python

我刚开始使用Python,为了获得一些实践,我尝试(其中包括)根据用户请求以不同方式生成斐波那契数。

我设法使用嵌入在函数中的for循环和while循环。但是将for循环和函数结合起来是行不通的-Python总是只返回3个数字,无论我输入多少。

def fibonacci():
    num = int(input("How many numbers shall be generated?: "))
    if num == 0:
        fib = []
    elif num == 1:
        fib = [1]
    elif num == 2:
        fib = [1,1]
    elif num > 2:
        fib = [1,1]
        for i in range(2,num):
            fib.append(fib[-1]+(fib[-2]))  
            return fib        
print("Here are your Fibonacci numbers: ", fibonacci())

我希望看到num = 10 [1、2、3、5、8、13、21、34、55],但是无论如何,我都会得到[1、2、1]我选择数字。

能否请您告诉我代码中哪里有错误? 提前非常感谢!

0 个答案:

没有答案