Python 斐波那契数取整数

Python 斐波那契数取整数,python,integer,fibonacci,Python,Integer,Fibonacci,我有两个关于斐波那契数的问题 1) 斐波那契基函数中作为参数的整数数?(土耳其语:Argüman olarak alınan onluk tabanda ki sayıyıFibonacci tabanına dönütüren işlev?) 2) 斐波那契函数中给定的数字转换为整数基?(土耳其语:斐波那契塔班·维兰达·维里米·萨伊·约鲁克·塔巴纳·德努蒂伦·伊列夫?) a,b=0,1 印刷品(a) 印刷品(b) i=2 而我只是将其全部移动到一个函数并处理特殊情况 def fib(n):

我有两个关于斐波那契数的问题

1) 斐波那契基函数中作为参数的整数数?(土耳其语:Argüman olarak alınan onluk tabanda ki sayıyıFibonacci tabanına dönütüren işlev?)

2) 斐波那契函数中给定的数字转换为整数基?(土耳其语:斐波那契塔班·维兰达·维里米·萨伊·约鲁克·塔巴纳·德努蒂伦·伊列夫?)

a,b=0,1
印刷品(a)
印刷品(b)
i=2

而我只是将其全部移动到一个函数并处理特殊情况

def fib(n):
    #TODO: handle invalid case(negative or non-int) and return

    if(n == 0):
        print(0)
        return

    if(n == 1):
        print(1)
        return

    a, b = 0, 1
    i = 2
    #this will go up to the n-th number
    while i<=n:
        a,b = b, a+b
        i+=1

    print (b)
您将得到:

1
0
8
3524578

你的问题是什么,更具体地说,出了什么问题?我猜他想要一个计算斐波那契数的直接公式,而不是通过一个循环。@Iplodman它最多打印50个斐波那契数。我只想要一个,例如f(6)。@系统发生学是的,类似的。我只需要一个fibonacci数,您需要使用它来计算序列的各个成员。如果您从函数中删除
print
,扔掉
i
,并
返回一个
,则更简单的解决方案是可能的。(我的版本有6行)我写它是为了符合OP的需要。OP打印并跟踪
i
,因此我决定也这样做。我认为这些特殊情况下的代码更难理解。
fib(1)
fib(0)
fib(6)
fib(33)
1
0
8
3524578