给出五个复杂的函数式编程的python程序源码
时间: 2024-05-15 13:17:35 浏览: 92
1. 使用lambda表达式和filter函数从列表中筛选出所有偶数:
```
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_nums = list(filter(lambda x: x % 2 == 0, lst))
print(even_nums)
```
2. 使用reduce函数计算列表中所有元素的积:
```
from functools import reduce
lst = [1, 2, 3, 4, 5]
product = reduce(lambda x, y: x * y, lst)
print(product)
```
3. 使用map函数将列表中的所有元素转化为字符串类型:
```
lst = [1, 2, 3, 4, 5]
str_lst = list(map(lambda x: str(x), lst))
print(str_lst)
```
4. 使用列表生成式和filter函数从列表中筛选出所有长度大于等于5的字符串:
```
lst = ["apple", "banana", "orange", "grape", "watermelon"]
long_words = [word for word in lst if len(word) >= 5]
print(long_words)
```
5. 使用递归函数计算斐波那契数列的第n项:
```
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(10))
```
阅读全文