[英]Return value of this Fibonacci Number (python)
在书中的例子中,我有这个 function 作为斐波那契数列。 我不明白为什么当我通过fib(3)
调用 function 时它不返回任何斐波那契数
def fib(n):
"""Assumes n an int >= 0
Returns Fibonacci of n"""
if n == 0 or n == 1:
return 1
else:
return fib(n-1) + fib(n-2)
fib(3)
但是使用以下代码,当我通过 testFib(3) 调用 testFib 时,它确实返回了字符串“fib of i = fib(i)”。 fib(i) 是印刷品中的价值。 谁能帮助我理解这两个 fib(3) 标注之间的区别(一个是我的直接fib(3)
标注,另一个在 testFib 内部, print('fib of', i, '=',fib(i))
def testFib(n):
for i in range(n+1):
print ('fib of', i, '=', fib(i))
testFib(3)
最近刚刚学习了Scope Nest for python程序的精髓。 我觉得这可能是一个很好的例子,可以更好地理解这个概念。
def fib(n): """Assumes n an int >= 0 Returns Fibonacci of n""" if n == 0 or n == 1: return 1 else: return fib(n-1) + fib(n- 2) 纤维(3)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.