首页 > 软件开发 > PYTHON >

Python中如何使用闭包

来源:互联网 2023-03-16 19:06:48 239

在Python中,有时候希望通过某函数操作某变量,同时也只允许该函数操作,不能通过其他方式操作,这时就可以通过闭包解决这个问题。hLX办公区 - 实用经验教程分享!

工具/原料

  • Python3环境

方法/步骤

  • 1

    闭包通常需要满足三个条件:一是函数嵌套,在一个函数的内部定义了另一个函数。二是内部的函数里使用了外部函数的局部变量。三是外部函数的返回值是内部函数的引用。下图就是典型的闭包使用示例。hLX办公区 - 实用经验教程分享!

    Python中如何使用闭包hLX办公区 - 实用经验教程分享!

  • 2

    从下图可以看到,外部函数outer的返回值就是内部函数inner,将返回结果保存至变量fun,fun的类型是functionhLX办公区 - 实用经验教程分享!

    Python中如何使用闭包hLX办公区 - 实用经验教程分享!

  • 2相关内容未经授权抓取自百度经验
  • 3

    另外,outer中的print仅在运行outer函数时执行过一次,之后执行fun函数(也就是inner函数)并未执行outer函数内的print代码hLX办公区 - 实用经验教程分享!

    Python中如何使用闭包hLX办公区 - 实用经验教程分享!

  • 4

    在inner函数中,因为要修改外部函数的局部变量,因此需要在前面用nonlocal声明。可以看到每次执行fun都会将x加10,且没有其他途径可以修改x,实现了数据保护功能。hLX办公区 - 实用经验教程分享!

    Python中如何使用闭包hLX办公区 - 实用经验教程分享!

  • 以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!hLX办公区 - 实用经验教程分享!


    标签: python

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码