当前位置:首页python > 正文

python编程题:生成斐波那契数列并筛选偶数(列表及列表推导式)

作者:野牛程序员:2024-11-18 14:17:04python阅读 2010
python编程题:生成斐波那契数列并筛选偶数(列表及列表推导式)

python编程题:生成斐波那契数列并筛选偶数(列表及列表推导式) 

题目描述: 生成一个包含前20个斐波那契数列元素的列表,然后使用列表推导式筛选出其中的偶数。 

示例: 

输出:前20个斐波那契数列元素列表及筛选后的偶数列表(例如:[0, 1, 1, 2, 3, 5, 8, ...] 和 [0, 2, 8, ...])

# 生成前20个斐波那契数列元素
fib_sequence = [0, 1]
for _ in range(18):  # 前两个数已知,还需生成18个
    fib_sequence.append(fib_sequence[-1] + fib_sequence[-2])

# 使用列表推导式筛选偶数
even_fib = [num for num in fib_sequence if num % 2 == 0]

# 输出结果
print("前20个斐波那契数列元素:", fib_sequence)
print("筛选出的偶数:", even_fib)
前20个斐波那契数列元素: [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181]
筛选出的偶数: [0, 2, 8, 34, 144, 610, 2584]
  • 生成斐波那契数列

    • 使用循环从第 3 项开始逐步计算,fib_sequence[-1] + fib_sequence[-2] 获取最后两项之和。

    • 将计算的结果追加到列表 fib_sequence 中。

  • 筛选偶数

    • 遍历斐波那契列表中的每个元素 num

    • 判断是否为偶数(num % 2 == 0),是则加入新列表。

    • 使用列表推导式 [num for num in fib_sequence if num % 2 == 0]

  • 输出结果

    • 打印完整斐波那契数列以及筛选出的偶数列表。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • python
  • 最新推荐

    热门点击