python:从入门到放弃 09 函数对象与闭包
2022/3/18 22:27:56
本文主要是介绍python:从入门到放弃 09 函数对象与闭包,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录- 函数对象
- 函数名可以当做变量名赋值
- 函数名还可以当成函数的实参
- 函数名还可以当做函数的返回值
- 函数名可以作为容器类型的元素
- 闭包函数
- 闭包函数实际应用
函数对象
函数对象指的是函数可以被当做’数据’来处理,具体可以分为四个方面的使用
函数名可以当做变量名赋值
def bar(): return add func=bar() func(1,2) 3
函数名还可以当成函数的实参
def foo(x,y,func): return func(x,y) foo(1,2,add) 3
函数名还可以当做函数的返回值
def bar(): return add func=bar() func(1,2) 3
函数名可以作为容器类型的元素
'''容器类型:内部可以存档多个元素的数据类型>>>:列表、元组、字典''' def index(): print('from index') l1 = [11, 22, 33, 44, index] print(l1) l1[-1]() # index()
闭包函数
闭包函数的特征: 1.闭:定义在函数内部的函数 2.包:内部函数使用了外层函数名称空间中的名字 def outer(): x = 999 def inner(): # 闭包函数 print('from outer>>>inner',x) return inner x = 666 res = outer() res() # from outer>>>inner 999 '''闭包函数inner使用的是函数outer的局部名称空间的变量X,而非全局名称空间的变量X'''
闭包函数实际应用
目前为止,我们得到了两种为函数体传值的方式,一种是直接将值以参数的形式传入
,另外一种就是将值包给函数
#方式一: def index(username): print(username) index('Rain') # 以参数的形式传入 #方式二: def outer(): username = 'Rain' def index(): print(username) # 使用的是outer函数包给index函数的值 return index res = outer() res() # Rain
这篇关于python:从入门到放弃 09 函数对象与闭包的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程
- 2024-11-14Python编程基础入门
- 2024-11-14Python编程入门指南
- 2024-11-13Python基础教程
- 2024-11-12Python编程基础指南
- 2024-11-12Python基础编程教程
- 2024-11-08Python编程基础与实践示例
- 2024-11-07Python编程基础指南