不使用递归:

# -*- coding:utf-8 -*-
class Solution:
    def Fibonacci(self, n):
        # write code here
        a =0
        b = 1
        i=0
        if n == 0:
            return 0
        else:
            while i < n:  #n等于几就循环几圈
                i+=1
                b, a= a+b,b  #这样写时候,左边的两个值分别用旧的a,b如果分成两行的话就乱套了,a是n的值,b是n+1的值
            return a

使用递归:

def fab(n):
    if n == 0:
        return 0
    elif 0<n<=2:
        return 1
    else:
        return fab(n-1)+fab(n-2)

print(fab(5))