斐波那契数列是维德利已知的数学序列,它解释了许多自然现象。它以0和1开头,然后继续将一个术语添加到其上一个术语以获得下一个术语。在本文中,我们将看到如何通过使用python中的lambda函数生成给定数量的斐波那契数列元素。
我们使用map函数将lambda函数应用于列表的每个元素。我们设计了一个列表切片机制来获取前两个项的总和,并使用范围来计数要生成的项数。
def fibonacci(count): listA = [0, 1] any(map(lambda _:listA.append(sum(listA[-2:])), range(2, count))) return listA[:count] print(fibonacci(8))
输出结果
运行上面的代码给我们以下结果-
[0, 1, 1, 2, 3, 5, 8, 13]
在这种方法中,我们将reduce函数与lambda函数一起使用来获得前两项的和。我们必须两次应用lambda及其范围,以保持所需术语数的计数并获得最终结果。
from functools import reduce fib_numbers = lambda y: reduce(lambda x, _: x + [x[-1] + x[-2]], range(y - 2), [0, 1]) print(fib_numbers(8))
输出结果
运行上面的代码给我们以下结果-
[0, 1, 1, 2, 3, 5, 8, 13]