输出斐波拉契数列的前n项

#定义fib()函数,输出数列的前n项(若n<=0,则输出Error)
def fib(n):
#完善代码

n=int(input())
fib(n) #调用函数计算并打印fibonacci数列前n项

从1开始吗?

def fib(n):
    if n<=0:
        print("Error")
        return
    a = b = i = 1
    while i<=n:
        print(a)
        a,b = b,a+b
        i += 1

def create_num(n):
    a, b = 0, 1
    i = 0
    while i < n:
        ret = yield a
        a, b = b, a + b
        i += 1


obj = create_num(10)
# 使用next函数取值
print(next(obj))
print(next(obj))
print(next(obj))
print(next(obj))
print(next(obj))
print(next(obj))
print(next(obj))