Fibonacci Sequence ด้วย Lambda Function
สร้างลำดับฟีโบนัชชี n ตัวแรก (0, 1, 1, 2, 3, 5, ...) โดยใช้ Lambda
วิธีที่ 1: ใช้ map() + lambda + sum
def fibonacci(n):
seq = [0, 1]
any(map(lambda _: seq.append(sum(seq[-2:])), range(2, n)))
return seq[:n]
print(fibonacci(8)) # [0,1,1,2,3,5,8,13]
วิธีที่ 2: ใช้ functools.reduce + lambda
from functools import reduce
fib = lambda n: reduce(lambda x, _: x + [x[-1]+x[-2]], range(n-2), [0,1])
print(fib(8)) # [0,1,1,2,3,5,8,13]