python返回函数
时间: 2023-10-15 18:28:17 浏览: 48
在Python中,函数不仅可以返回 int、str、list、dict 等数据类型,还可以返回函数本身。这意味着,我们可以定义一个函数,让它返回另一个函数。
例如,我们可以定义一个函数 f(),让它返回一个函数 g。这样的代码可以写成:
def f():
print('call f()...')
# 定义函数 g:
def g():
print('call g()...')
# 返回函数 g:
return g
这样,当我们调用函数 f() 时,它会返回函数 g。我们可以再次调用返回的函数 g()。
在另一个例子中,我们定义了一个函数 calc_prod(lst),它接收一个列表作为参数,并返回一个函数。返回的函数可以计算参数列表的乘积。具体的代码如下:
def calc_prod(lst):
def lazy_prod():
def f(x, y):
return x * y
return reduce(f, lst, 1)
return lazy_prod
f = calc_prod([1, 2, 3, 4])
print(f())
在这个例子中,我们调用 calc_prod([1, 2, 3, 4]) 返回了一个函数 f。当我们调用 f() 时,它会计算参数列表 [1, 2, 3, 4] 的乘积。
所以,Python允许函数作为返回值,这样我们可以更灵活地使用函数。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [Python学习笔记-返回函数](https://blog.csdn.net/ljp1919/article/details/50937665)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [Python——返回函数](https://blog.csdn.net/qq_41573234/article/details/81737454)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)