python --闭包学习
闭包概念:
Closure:内部函数中对enclosing作用域的变量进行引用
enclosing作用域:函数内部与内嵌函之间
范例1:
#coding:utf-8def set_passline(passline):def cmp(val):if val>= passline:print "passline is %d"%passlineprint "%d is pass"%valelse:print "passline is %d"%passlineprint "%d is failed"%valreturn cmpf_100=set_passline(60) f_150=set_passline(90)f_100(89) f_150(89)
输出:
passline is 60
89 is pass
passline is 90
89 is failed
范例2:
#coding:utf-8 def my_sum(*arg):return sum(arg) def my_average(*arg):return sum(arg)/len(arg)def dec(func):def in_dec(*arg):print ('in_dec arg=',arg)if len(arg)==0:return 0for val in arg:if not isinstance(val,int):return 0return func(*arg)return in_decmy_sum=dec(my_sum) my_average=dec(my_average) print my_sum(1,2,3,4,5) print my_sum(1,2,3,4,5,'6') print my_average(1,2,3,4,5) print my_average()
输出:
('in_dec arg=', (1, 2, 3, 4, 5))
15
('in_dec arg=', (1, 2, 3, 4, 5, '6'))
0
('in_dec arg=', (1, 2, 3, 4, 5))
3
('in_dec arg=', ())
0
闭包作用
1:封装
2:代码复用
python --闭包学习相关推荐
- 深入理解Python闭包概念
闭包并不只是一个Python中的概念,在函数式编程语言中应用较为广泛.理解python中的闭包一方面是能够正确的使用闭包,另一方面可以好好体会和思考闭包的设计思想. 1.概念介绍 首先看一下维基上对闭 ...
- python自学流程-Python系统学习流程图,教你一步步学习python
对于刚开始接触Python的小伙伴来说,没有思路方法,不知道从何开始学习,把软件环境安装好后就不知所措了!接下来我给大家分享下多位大牛倾力打造的python系统学习流程,一个月才设计完的! Pytho ...
- Python闭包与装饰器
Python闭包与装饰器 一.闭包 函数是一个对象,所以可以对象的形式作为某个函数的结果返回.函数执行完后内部变量将会被回收.在闭包中,由于内部函数存在对外部函数的变量的引用,所以即使外部 ...
- 用python设计一个管理系统思路_Python大佬一个月打造的Python系统学习流程图!
对于刚开始接触Python的小伙伴来说,没有思路方法,不知道从何开始学习,把软件环境安装好后就不知所措了!接下来我给大家分享下多位大牛倾力打造的python系统学习流程,一个月才设计完的! Pytho ...
- python逻辑运算的一些流程图_Python大牛历时一个月打造的Python系统学习流程图,超详细!...
对于刚开始接触Python的小伙伴来说,没有思路方法,不知道从何开始学习,把软件环境安装好后就不知所措了!接下来我给大家分享下多位大牛倾力打造的python系统学习流程,一个月才设计完的! Pytho ...
- [转载] 根据Python常见面试题来谈谈 Python 闭包
参考链接: Python闭包 这里根据我们平常见到的一些Python常见面试题来跟大家说一下关于Python闭包的相关问题! 题目: 1.什么是闭包?闭包的定义? 2.手写一个简单的闭包 3.变量作用 ...
- 熬夜整理了2021年Python最新学习资料,分享给学弟学妹们【大学生必备】
Python最新学习资料和视频 一.Python软件 安装教程 视频教程 二.学习规划 阶段一:Python基础 阶段二:Python核心编程 阶段三:web前端开发 阶段四:数据库 阶段五:后端开发 ...
- python+人工智能学习线路
小白学Python最苦恼的是路线怎么走,怎样才不会走弯路,这里分享一份Python+人工智能的学习方案及目标.感兴趣的可以看看. 第一阶段 Python核心编程 学习内容技术要点 计算机组成原理认识操 ...
- Python课程学习笔记 上
笔记目录 学前准备 Python解释器安装包 下载 安装 Pycharm 下载 常用的快捷键 Python程序执行机制 语法基础 注释和中文乱码 变量 数据类型 运算符 数值运算符 复合运算符 比较运 ...
最新文章
- 小菜学设计模式——高内聚、低耦合
- hive replace替换多个_详解Mysql数据库中replace与replace into的用法及区别
- CMake编译Widget UI Qt程序
- python第三方工具箱_我的Python笔记——标准库、第三方工具包
- 裴蜀定理(note)
- 曹大带我学 Go(12)—— 面向火焰图编程
- 新网卡不能绑定“旧”IP故障的解决
- 垃圾邮件过滤——学习笔记
- 编程工作枯燥、代码质量不高?华为云 MVP 来支招!
- Yii 2.0 权威指南 (5) 应用结构
- 怎么修改服务器玩家等级级上限,GOM引擎等级限制了极限怎么办?传奇服务端突破等级限制的方法...
- vcf文件怎么转成excel_批量vcf转成excel格式的方法
- c# 容联云_迅雷云加速开放平台c#demo
- BTC API命令 中文版
- 小乐乐与进制转换-c++(六进制转换函数)
- 从零开始搭建仿抖音短视频APP-后端开发粉丝业务模块(2)
- PMIX ERROR: ERROR in file gds_ds12_lock_pthread.c
- IRP_MJ_ACQUIRE_FOR_SECTION_SYNCHRONIZATION中的文件过滤
- Python之服务巡检
- 健身之徒手健身:双人徒手健身,这才是男女搭配最好追求!