在学习Python的时候遇到这样一个问题,记录一下
a,b=b,a+b与a=b b=a+b的区别,原因见代码注释
input()输入的是string类型,需要转换成int类型
import sys
def fabonacci(n):
a,b,cnt=0,1,0
while True:
if(cnt>n):
return
yield a
a,b=b,a+b #依据a,b的初始值,先计算‘=’号右边的值,暂时不考虑左边的值。
#a=b
#b=a+b
cnt +=1
numab=int(input("请输入:"))
f=fabonacci(numab)
while True:
try:
print(next(f),end=" ")
except StopIteration:
sys.exit()