代码实现斐波那契数列

# 定义函数
def fab(n):
    # 判断n的有效性
    if n <= 0:
        return '传递的参数必须大于0的正整数'
    # 当n为1时返回斐波那契数的第1个数0
    elif n == 1:
        return 0
    else:
        # 给前两个数赋值为1
        a, b = 0, 1
        # 初始化一个列表变量,列表前两个值分别为0和1
        fab_list = [0, 1]
        # 由于fab_list初始化时已经有两个数值,所以得到n个数只需循环n-2次即可
        for i in range(n - 2):
            # 以下语句实现后一个数等于前两个数之和
            a, b = b, a + b
            # 把前两个数的和加到列表中
            fab_list.append(b)

        # 返回列表
        return fab_list


# 打印出包含11个斐波那契数的序列
print(fab(11))

 

以上代码中 a, b=b a+b 语句实现一个数等于前两个数的和,即 b=a+b 然后将前两个数中的后一个和这个和作为下次运算的前两个数,通过此循环可以得到一组斐波那契数列

[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

Process finished with exit code 0

posted @ 2022-08-17 23:36  剑尊  阅读(101)  评论(0编辑  收藏  举报