编写函数求1-n中奇数的平方和,用fun函数
时间: 2024-02-09 11:08:21 浏览: 85
java源代码--求n个奇数的和
好的,下面是使用 `functools.reduce()` 函数和 `lambda` 表达式编写的实现代码:
```python
import functools
def sum_of_odd_squares(n):
"""
求1-n中奇数的平方和
参数:
n -- 正整数,上界
返回值:
sum -- 整数,1-n中奇数的平方和
"""
odd_nums = filter(lambda x: x % 2 == 1, range(1, n+1))
sum = functools.reduce(lambda x, y: x + y**2, odd_nums, 0)
return sum
```
这个函数使用了 `filter()` 函数和 `lambda` 表达式来筛选出1到n中的奇数,然后使用 `functools.reduce()` 函数和 `lambda` 表达式来计算它们的平方和。你可以调用这个函数,比如:
```python
>>> sum_of_odd_squares(5)
35
```
这表示1到5中的奇数(1, 3, 5)的平方和为35。
阅读全文