广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python函数中的函数(闭包)用法实例
  • 263
分享到

Python函数中的函数(闭包)用法实例

函数实例Python 2022-06-04 19:06:20 263人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

本文实例讲述了python闭包的用法。分享给大家供大家参考,具体如下: Python函数中也可以定义函数,也就是闭包。跟js中的闭包概念其实差不多,举个Python中闭包的例子。 def make_ad

本文实例讲述了python闭包的用法。分享给大家供大家参考,具体如下:

Python函数中也可以定义函数,也就是闭包。跟js中的闭包概念其实差不多,举个Python中闭包的例子。


def make_adder(addend):
  def adder(augend):
    return augend + addend
  return adder
p = make_adder(23)
q = make_adder(44)
print(p(100))
print(q(100))

运行结果是:123和144.

为什么?Python中一切皆对象,执行p(100),其中p是make_adder(23)这个对象,也就是addend这个参数是23,你又传入了一个100,也就是augend参数是100,两者相加123并返回。

有没有发现make_adder这个函数,里面定义了一个闭包函数,但是make_adder返回的return却是里面的这个闭包函数名,这就是闭包函数的特征。

再看一个Python闭包的例子:


def hellocounter (name):
  count=[0]
  def counter():
    count[0]+=1
    print('Hello,',name,',',count[0],' access!')
  return counter
hello = hellocounter('ma6174')
hello()
hello()
hello()

运行结果:


tantengdeMacBook-Pro:learn-python tanteng$ python3 closure.py 
Hello, ma6174 , 1 access!
Hello, ma6174 , 2 access!
Hello, ma6174 , 3 access!

使用闭包实现了计数器的功能,这也是闭包的一个特点,返回的值保存在了内存中,所以可以实现计数功能。

转自:小谈博客 Http://www.tantengvip.com/2015/07/python-closure/

希望本文所述对大家Python程序设计有所帮助。

--结束END--

本文标题: Python函数中的函数(闭包)用法实例

本文链接: https://www.lsjlt.com/news/15162.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python函数中的函数(闭包)用法实例
    本文实例讲述了Python闭包的用法。分享给大家供大家参考,具体如下: Python函数中也可以定义函数,也就是闭包。跟js中的闭包概念其实差不多,举个Python中闭包的例子。 def make_ad...
    99+
    2022-06-04
    函数 实例 Python
  • Python闭包函数的用法
    本篇内容主要讲解“Python闭包函数的用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python闭包函数的用法”吧!简而言之, 闭包的特点就是内部函数引用了外部函数中的变量。 在Pytho...
    99+
    2023-06-02
  • python函数进阶之闭包函数
    目录闭包函数什么是闭包函数判断是否是闭包函数\__closure__cell_contents闭包函数的特点闭包函数的意义闭包函数 什么是闭包函数 如果内函数使用了外函数的局部变量,...
    99+
    2022-11-10
  • JavaScript函数闭包实例讲解
    这篇文章主要讲解了“JavaScript函数闭包实例讲解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript函数闭包实例讲解”吧!首先让我们来...
    99+
    2022-10-19
  • Golang函数的闭包应用实例分享
    Golang是一门编程语言,它以其简洁、高效、并发安全等特性,受到越来越多开发者的青睐。Golang的函数是值类型,具备高度的灵活性和扩展性,可以方便地实现闭包这一功能。闭包是函数中常用的技巧之一,它允许函数访问在外部作用域中定义的变量,并...
    99+
    2023-05-16
    Golang 闭包 应用实例
  • Python函数二(函数名,闭包,迭代器
    函数名的使用: 函数名可以作为值,赋值给变量。 函数名可以作为参数传参给函数。 函数名可以作为返回值。 函数名可以作为元素存储在容器里。 闭包:在嵌套函数内,使用外层局部变量(非全局变量)就是一个闭包,闭包可以多层嵌套。闭包的优点: ...
    99+
    2023-01-30
    函数 迭代 Python
  • python闭包函数有什么用
    python中闭包函数的作用有以下几点闭包函数自带函数作用域,查找变量只会找内部函数外面的那一层。闭包函数自带延迟计算状态,可以延迟执行某个函数,需要执行时将返回结果赋值即可。闭包函数可以让函数始终保持一种状态。...
    99+
    2022-10-20
  • python中similarity函数实例用法
    1、similarity函数接收两个列表,并返回由两个列表中相同元素组成的列表。 2、函数使用列表推导,遍历所有a列表中的元素,并使用in关键词来判断这些元素是否存在于b列表中。 实...
    99+
    2022-11-12
  • python中os.path.join()函数实例用法
    1、说明 拼接文件路径,可以有多个参数。 2、语法 os.path.join(path1,path2,*) path1 初始路径。 path2 需要拼接在其后的路径。初始路径文件夹下的文件或文件夹。可以有多个需...
    99+
    2022-06-02
    python os.path.join()
  • python中re.findall函数实例用法
    1、findall函数返回字符串中所有匹配结果的正则表达式列表。 2、如果没有分组的正则是返回的正则匹配,分组返回的是分组匹配而非整个正则匹配。 实例 找到所有与pattern匹配的...
    99+
    2022-11-12
  • 如何在python闭包中使用函数
    这期内容当中小编将会给大家带来有关如何在python闭包中使用函数,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问...
    99+
    2023-06-14
  • 实例讲解Python的函数闭包使用中应注意的问题
    昨天正当我用十成一阳指功力戳键盘、昏天暗地coding的时候,正好被人问了一个问题,差点没收好功,洪荒之力侧漏震伤桌边的人,废话不多说,先上栗子(精简版,只为说明问题): from functools ...
    99+
    2022-06-04
    函数 实例 中应注意
  • Python float函数实例用法
    我们知道数字有很多种类型,比如整数、浮点数。在字符串值的讨论上,我们会需要用浮点值的形式,那么就需要函数来进行转换。float函数的功能正是如此,能够对其中的数值进行转换,下面我们就...
    99+
    2022-11-11
  • Python pass函数实例用法
    说到占位符,大家从字面意思上可以看出,是占一个位置。因为在实际操作中,我们有很多代码是不能立刻填上的,所以会用pass函数来解决。下面我们就pass函数进行说明、语法的介绍,并带来实...
    99+
    2022-11-11
  • Python函数式编程之闭包
    -------------------------函数式编程之*******闭包------------------------ Note: 一:简介 函数式编程不是程序必须要的,但是对于简化程序有很重要的作用。 Python...
    99+
    2023-01-30
    函数 Python
  • python匿名函数的实例用法
    一般情况下,lambda就像是一个函数简化器,它允许在所用代码中嵌入函数的定义。它们完全是可选的(一直都可以使用def替换它们),但只需嵌入少量可执行代码,就能使代码结构更加简洁,从...
    99+
    2022-11-11
  • Python Pandas pandas.read_sql函数实例用法
    Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的...
    99+
    2022-06-02
    Python Pandas pandas.read_sql
  • Python中input()函数的用法实例小结
    目录一:input()函数的输入机制二:input()函数常涉及的强制类型转换三:带提示的input()函数及其常见问题四:利用input()一次性输入多个变量值附:input()函...
    99+
    2022-11-13
  • 浅述python中argsort()函数的实例用法
    由于想使用python用训练好的caffemodel来对很多图片进行批处理分类,学习过程中,碰到了argsort函数,因此去查了相关文献,也自己在python环境下进行了测试,大概了解了其相关的用处,为了怕...
    99+
    2022-06-04
    函数 实例 浅述
  • python copy模块中的函数实例用法
    1、copy.copy()函数可用于复制列表或字典等可变值,复制后的列表和原列表是两个独立的列表。 import copy origin = [1,2,3] new = copy...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作