day12 十二、开放封闭、装饰器】的更多相关文章

设计: 代码清单: Display public abstract class Display { public abstract int getColumns(); public abstract int getRows(); public abstract String getRowText(int row); public final void show(){ ;i<getRows();i++){ System.out.println(getRowText(i)); } } } Strin…
十. Python基础(10)--装饰器 1 ● 装饰器 A decorator is a function that take a function as an argument and return a function. We can use a decorator to extend the functionality of an existing function without changing its source. Decorators are syntactic sugar.…
一.nonlocal关键词 # global # num = # def fn(): # global num # L>G 将局部的名字与全局统一 # num = # fn() # print(num) # 结果为 1.作用:将local和enclosing(e中的名字需要提前定义)中的名字统一 2.应用场景:如果想在被嵌套的函数中修改外部函数变量(名字)的值 3.案例 def outer(): num = print(num) # 结果为 def inner(): # 如果想在被嵌套的函数中修…
装饰器 一.装饰器的本质 装饰器的本质就是函数,功能就是为其他函数添加附加功能. 利用装饰器给其他函数添加附加功能时的原则: 1.不能修改被修饰函数的源代码        2.不能修改被修饰函数的调用方式 举例:计算以下一段程序执行时间 #程序:计算0—19的和 def cal(l): res = 0 for i in l: res += i return res print(cal(range(20))) #给上述程度增加时间模块 import time def cal(l): start_t…
通过一个任务来加深对装饰器的理解和应用 回顾:装饰器的框架 def timmer(func): def wrapper(): func() return wrapper 任务:给以下正在运行的程序加一个验证功能的装饰器正在运行的程序加一个验证功能的装饰器 def index(): print('欢迎来到京东主页') def home(name): print('欢迎回家%s' %name) def shopping_car(name): print('%购物车里有[%s,%s,%s]' %(na…
读时间函数: # import time # def func(): # start_time = time.time() # 代码运行之前的时间 # print('这是一个func函数') # time.sleep(3) # 阻塞,睡一下, 1 是睡一秒 # print(time.time() - start_time) # 代码运行后的时间 # func() 嵌套函数 : (判断每个函数执行空间) # import time # def func(): # print('这是func函数')…
本节内容 1.函数 2.装饰器 3.生成器 4.类 一.函数 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 函数式编程最重要的是增强代码的重用性和可读性 def 函数名(参数): ... 函数体 ... 返回值 --------------------------------- 函数的定义主要有如下要点: def:表示函数的关键字 函数名:函数的名称,日后根据函数名调用函数 函数体:函数中进行一系列的逻辑计算,…
1.装饰器(decorator):设计模式 作用:给不同的函数和方法,增加不同的公用的功能. @classmethod,@staticmethod等均是装饰器 定义一个装饰函数,函数必须返回一个闭包函数,并且func(被装饰的函数)会被python自动传递给装饰函数,作为装饰函数的一个参数 2.闭包 函数对象+函数内部需要使用的一个外部变量=函数返回的整体 闭包必须返回函数 装饰函数中的闭包函数结构如下: def wrapper(*arg,**kw): xxxx干一些事情 func(*arg,*…
装饰器是什么? 有什么用? 为什么要用? 真的有用吗? 1.装饰器: 装饰器: 定义:本质是函数,(装饰其他函数)就是为其他函数添加附加功能. 原则:1.不能修改被装饰的函数的源代码         2.不能修改被装饰的函数的调用方式 插播一条广告:    Python内存自动回收机制. 到底怎么个回收法呢? 有一个定时器,会不断的扫描这些字符串.值等,如果发现某个没有被引用,则回收掉.如:del(var1) 删除的是var1这个变量名,这个变量对应的值回收的两种情况1.程序结束:2.定时扫描到…
1. 函数 在 Python 中,使用关键字 def 和一个函数名以及一个可选的参数列表来定义函数.函数使用 return 关键字来返回值.定义和使用一个最简单的函数例子: >>> def foo(): ... return 1 >>> foo() 函数体(和 Python 中所有的多行语句一样)由强制性的缩进表示.在函数名后面加上括号就可以调用函数. 2. 作用域 在 Python 函数中会创建一个新的作用域.Python 高手也称函数有自己的命名空间.也就是说,当在…