摘要: 1. 什么是装饰器 装饰器就是用来为被装饰的对象新增功能的工具/函数,被装饰的对象可以是任意可调用的对象,装饰器本身也可以是任意可调用的对象2. 为何要用装饰器 开放封闭原则:对修改封闭,对扩展开放 装饰器需要遵循的原则: 1. 不能修改被装饰对象的源代码 2. 不能修改被装饰对象的调用方式 装饰器 阅读全文
posted @ 2018-11-18 12:21 clyde_S 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 什么是闭包函数 函数嵌套+函数对象+名称空间与作用域 闭:定义在函数内的函数 包:该内部函数需要访问一个名字,该名字属于外层函数作用域的(强调:不是全局作用域) 为何要用闭包函数 为了实现装饰器如何用闭包函数 def outter(): xxx=111 #这个就是外层函数作用域 def inner( 阅读全文
posted @ 2018-11-18 11:49 clyde_S 阅读(1492) 评论(0) 推荐(0) 编辑
摘要: 名称空间namespaces 名称空间就是存放名字与值绑定关系的内存空间 名称空间内部呈现的格式,是以字典的形式呈现给你看,即key=valus的格式,但是不是字典类型,只是呈现的方式是字典的样式 名称空间分为三种 内置名称空间: 1. 特点: 存放是python解释器自带的名字,len,print 阅读全文
posted @ 2018-11-18 11:17 clyde_S 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 函数的嵌套分为两类:1、函数的嵌套定义: 在函数内部又定义了一个函数 def foo(): x=1 #print(x) def bar(): print('from bar') def shop(): print(‘开始购物’) shop() #这里调取第三层的功能,所以从第三层开始就每一层都调用一 阅读全文
posted @ 2018-11-18 10:02 clyde_S 阅读(462) 评论(0) 推荐(0) 编辑
摘要: 函数对象指的是: 函数的内存地址可以像变量值一样去使用 函数对象的使用 def func(): #定义一个函数 print('from func') #这是功能 1、函数对象可以被引用 f=func #将函数地址放到一个变量中 print(f) #打印这个函数的值,得到的是一个函数的内存地址 f() 阅读全文
posted @ 2018-11-18 09:42 clyde_S 阅读(190) 评论(0) 推荐(0) 编辑