【知识】Python中的闭包是什么?

2025年01月02日04:32:07 科技 1050

Python中的闭包是一种特殊的函数,它可以在函数内部定义另一个函数,并且返回该函数。闭包的特点是内部函数可以访问外部函数的变量和参数,即使外部函数已经执行完毕,内部函数仍然可以使用这些变量和参数。闭包的作用有:

  • 可以读取外部函数的局部变量,实现变量的封装和隐藏。
  • 可以保持外部函数的局部变量在内存中,实现变量的持久化和共享。
  • 可以根据外部函数的参数,动态创建不同功能的函数,实现函数的柯里化和装饰。

闭包的语法如下:

def outer_func(*args, **kwargs):
    # 定义外部函数的变量和参数
    outer_var = ...
    # 定义内部函数
    def inner_func():
        # 使用外部函数的变量和参数
        print(outer_var)
        # 定义内部函数的逻辑
        ...
    # 返回内部函数的引用
    return inner_func

其中,outer_func是外部函数,inner_func是内部函数,outer_var是外部函数的变量或参数。inner_func可以使用outer_var,即使outer_func已经结束。返回inner_func的引用,可以在外部调用inner_func,或者赋值给其他变量。

例一个求幂的函数:

def power(n):
    # 定义外部函数的参数n
    def exponent(x):
        # 使用外部函数的参数n
        return x ** n
    # 返回内部函数的引用
    return exponent
square = power(2) # 创建平方函数
cube = power(3) # 创建立方函数
print(square(4)) # 16
print(cube(4)) # 64

【知识】Python中的闭包是什么? - 天天要闻

科技分类资讯推荐

苹果visionOS 26发布:全新3D小组件可固定于环境中 - 天天要闻

苹果visionOS 26发布:全新3D小组件可固定于环境中

IT之家 6 月 10 日消息,在目前正在进行的 WWDC25 中,苹果公布了 visionOS 26。据苹果介绍,visionOS 26 带来全新 3D 小组件功能,用户可以将小组件固定在环境中。此外,visionOS 26 还新增空间场景 / 空间画廊功能,也就是利用 LiDAR 传感器打造 3D 场景,让用户置身其中,并改进了用户的“自影像”3D 头像
苹果 iOS 26 系统更新正式发布:全新液态玻璃设计、AI 功能改进 - 天天要闻

苹果 iOS 26 系统更新正式发布:全新液态玻璃设计、AI 功能改进

IT之家 6 月 10 日消息,苹果今日正式发布了 iOS 26 更新,系统命名跟上年份,带来设计、功能、AI 等多个方面的改进,IT之家汇总如下:全新外观新设计使应用和系统体验更加富有表现力和令人愉悦,同时保持了 iOS 的即时熟悉感。它采用 Liquid Glass(液态玻璃)—— 一种新的半透明材质,能够反射和折射周围环境,使内容更...
iOS 26升级视觉智能:AI识别屏幕内容,可搜索同款商品等 - 天天要闻

iOS 26升级视觉智能:AI识别屏幕内容,可搜索同款商品等

IT之家 6 月 10 日消息,在今天举办的 WWDC 2025 主题演讲中,苹果宣布升级视觉智能(Visual Intelligence),让用户能够搜索并操作 iPhone 应用中显示的任何内容。IT之家此前曾分享视觉智能的初步上手体验,主要通过相机识别现实世界中的物体,而在本次更新中,该功能可以直接分析屏幕上的内容。用户可以针对屏幕显示的图...
iPadOS 26登场:全新多任务处理/文件App比拟macOS - 天天要闻

iPadOS 26登场:全新多任务处理/文件App比拟macOS

IT之家 6 月 10 日消息,在目前正在进行的 WWDC25 中,苹果公布了 iPadOS 26。iPadOS 26 集中于多任务处理(相应功能支持 iPad 全系家族),带来了类似 macOS 的左上角“红绿灯”,用户打开 App 时应用首先会全屏显示,但用户也可以通过应用右下角来调整应用窗口大小,在连接键盘后,还支持通过鼠标来直观拖拽界面,点击“...
苹果预告 AirPods 新功能:录音室级录音 + 相机遥控 - 天天要闻

苹果预告 AirPods 新功能:录音室级录音 + 相机遥控

IT之家 6 月 10 日消息,在今天召开的 WWDC 2025 全球开发者大会上,苹果为 AirPods 4、AirPods 4(支持主动降噪 ANC)以及 AirPods Pro 2 耳机,预告了音频录制和相机遥控功能。录音室级别音频录制苹果公司表示无论是采访者、播客主播还是歌手,AirPods 用户都能随时随地录制录音室级别的高品质音频。IT之家援引博
这下惨了,特朗普的大棋下不下去了 - 天天要闻

这下惨了,特朗普的大棋下不下去了

特朗普的真正秘密是什么?今天通过3个故事来全面解构! 坏土豆 作品首发于头条号 一个坏土豆陪我的国一起逆袭每次我写时评的时候,总有人说人家马斯克是世界首富,不比你聪明,不比你眼光长远。人家特朗普,堂堂美国总统,不比你深谋远虑,你看不懂是因为
苹果发布Foundation模型框架 - 天天要闻

苹果发布Foundation模型框架

IT之家 6 月 10 日消息,正在举行的 WWDC 2025 开发者大会上,苹果公司以 Apple Intelligence 为开场,宣布推出 Foundation Models 框架。
阿尔特汽车进军智能机器人领域,多款产品研发中 - 天天要闻

阿尔特汽车进军智能机器人领域,多款产品研发中

IT之家 6 月 10 日消息,阿尔特汽车 6 月 8 日宣布正式进军机器人产业,该公司最新战略布局取得突破性进展 —— 由阿尔特联合云视科技、上海乙蜂共同投资的北京阿尔瑞特智能机器人科技有限公司(以下简称阿尔瑞特)已完成注册并举行成立庆典。阿尔特机器人业务由阿尔特董事长宣奇武亲自挂帅,并由思科系统前高管张毅军等具...