您的位置: 网站首页> python基础> 当前文章
python函数闭包(局部函数)
老董-我爱我家房产SEO2020-03-08198围观,123赞
在函数内部嵌套一个函数,而外部函数返回的不是一个具体的值,而是一个函数,这就是闭包。
可以用一个变量接收返回的函数,这个变量可以在后面被继续调用。
案例1:闭包简单语法
# -*- coding: utf-8 -*-
def test():
def echo(para):
print(para)
return echo
res = test()
res('隔壁老王')
D:python3installpython.exe D:/pyscript/py3script/python66/python66.py 隔壁老王 Process finished with exit code 0
案例2:计算一个数平方和立方。
# -*- coding: utf-8 -*-
def test(n):
def get_change(m):
return n ** m
return get_change # 返回值是一个函数名
# 计算3的平方
fun1 = test(3)
print(fun1(2))
# 计算3的立方
fun2 = test(3)
print(fun2(3))
"""
在执行完 fun1 = test(3) 和 fun2 = test(3)后,
外部函数 test()的参数n仍然会被内部函数 get_ahange()记住。
"""
D:python3installpython.exe D:/pyscript/py3script/python66/python66.py 9 27 Process finished with exit code 0
闭包让代码显的更加简洁,另外python的装饰器的原理中也会用到闭包这个知识点,随着后面的学习以及项目的开发会慢慢感受到闭包的优势,现在体会不到没关系。
很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
相关文章
文章评论
-
python函数闭包(局部函数)文章写得不错,值得赞赏


