Python 创建一个数学序列
我需要创建以下类型的数学序列: Pn=Pn-1+Pn-2 我们知道P0=0,P1=1 我真的很难创造一个序列,我试图创造它,这里是我写的一些东西Python 创建一个数学序列,python,sequence,fibonacci,Python,Sequence,Fibonacci,我需要创建以下类型的数学序列: Pn=Pn-1+Pn-2 我们知道P0=0,P1=1 我真的很难创造一个序列,我试图创造它,这里是我写的一些东西 def fibonacci(n): number = 0 if n == 0: number = 0 return (number) if n == 1: number = 1 return (number) if n > 1: def
def fibonacci(n):
number = 0
if n == 0:
number = 0
return (number)
if n == 1:
number = 1
return (number)
if n > 1:
def compute(limit):
for x in range(2, limit):
fibonacci(x) = fibonacci(x-1) + fibonacci(x-2)
for i in range(0, n):
number += compute(i)
第一:使用“return”语句时不需要使用括号
解决方案:
这段代码很好用,但是如果你使用动态规划,你可以更有效地计算斐波那契
例如:
请在您的问题中编辑您的代码有什么问题-例如,您可能会显示您从代码中获得的输出以及您期望/想要的内容。如果有错误信息,请在问题中填写全文。你这样想太多了。试着用通俗易懂的英语写出过程中的每一步,然后把它和你的代码联系起来。你会发现代码试图做额外的,不必要的事情。我知道,我正在尝试这样做
def fibonacci(n):
number = 0
if n == 0:
number = 0
return number
if n == 1:
number = 1
return number
if n > 1:
return fibonacci(n-1)+fibonacci(n-2)
fibonacci = [0,1]
for i in range(2,n+1):
fibonacci.append(fibonacci[i-1]+fibonacci[i-2])
print(fibonacci[-1])