当输入为0时,我不知道如何将0显示为我的斐波那契数列函数的输出。如何使用while循环来显示呢?

def Fibonacci(n):
    i= 0
    present = 1
    previous = 0
    while i <= n:
        nextterm = present + previous

        present = previous
        previous = nextterm
        i += 1
    return nextterm

I expect the output of Fibonacci(0) to be 0

最佳答案

您可以通过返回present而不是nextterm来修复当前代码。

万一您好奇,Python中常见的Fibonacci实现通常看起来像这样。对我来说,此版本中的变量命名似乎更直观。

def fib(n):
    cur, nxt = (0, 1)
    while n > 0:
        cur, nxt = (nxt, cur + nxt)
        n -= 1
    return cur

10-06 06:02