一.基本装饰器 基本装饰器的作用: 在不改变原函数的基础上, 通过装饰器, 给原函数新增某些功能 实现方法: 在原函数上加 @装饰器名字 其中@叫做语法糖 定义装饰器 第一层函数传入参数(用于传入原函数) 第二层使用原函数的同时, 加入需要新增的功能 第一层函数要返回第二层函数名 整个函数形成闭包 ...
分类:
编程语言 时间:
2017-04-23 13:18:06
阅读次数:
155
作业一:总结 1.什么是绑定到对象的方法,如何定义,如何调用,给谁用?有什么特性 定义:只要是在类内部定义的,并且没有被任何装饰器修饰过的方法,都是绑定到对象的 调用:对象.对象的绑定方法(),不用为self传值 特性:绑定方法唯一绑定一个对象,obj.func()会把obj传给func的第一个参数 ...
分类:
其他好文 时间:
2017-04-23 11:59:31
阅读次数:
212
作业一:总结 1.什么是绑定到对象的方法,如何定义,如何调用,给谁用?有什么特性 1.1 绑定到对象的方法:只要是在类内部定义的,没有被装饰器装饰过的方法,都是绑定到对象的。 1.2 调用 :对象.对象的绑定方法, 1.3 给谁用:给对象用 1.4 特性 : (自动传值)调用时会把对象本身当做第一个 ...
分类:
编程语言 时间:
2017-04-23 01:17:06
阅读次数:
251
#!/usr/bin/envpython#-*-coding:utf-8-*-#author:ChanghuaGongimporttime,functools‘‘‘实现装饰器:1.函数即变量;2.高阶函数;1)把一个函数名当做实参传给另一个函数(在不修改被装饰函数的源代码情况下为其添加功能);2)返回值中,包含函数名(不修改函数的调用方试)。3..
分类:
编程语言 时间:
2017-04-22 14:55:29
阅读次数:
214
封装概念: property代码1 import math class Circle: def __init__(self,radius): #圆的半径 self.radius=radius @property #添加装饰器,area=property(area) def area(self): r ...
分类:
编程语言 时间:
2017-04-22 09:40:59
阅读次数:
192
def outer(func): def inner(*arg,**kwarg): print('1') ret=func((*arg,**kwarg) print('2') return ret return inner @outer def f1((*arg,**kwarg): return ...
分类:
编程语言 时间:
2017-04-22 01:06:11
阅读次数:
131
在绑定属性时,如果我们直接把属性暴露出去,虽然写起来很简单,但是,没办法检查参数,导致可以对属性随便修改,不能限制输入。 这显然不合逻辑,也许名字可以叫123,但是年龄是青年就是有问题了。对于追求完美的Python程序员来说,这时候就需要引用一个装饰器 @property. @property广泛应 ...
分类:
其他好文 时间:
2017-04-21 22:28:05
阅读次数:
145
类下的函数的绑定与解除绑定 在类内部定义的函数无非三种用途 一:绑定到对象的方法 只要是在类内部定义的,并且没有被任何装饰器修饰过的方法,都是绑定到对象的 绑定到对象,指的是:就给对象去用, 使用方式:对象.对象的绑定方法(),不用为self传值 特性:调用时会把对象本身当做第一个参数传给对象的绑定 ...
分类:
其他好文 时间:
2017-04-21 20:41:21
阅读次数:
265
1、装饰器:‘‘‘
实现装饰器只是储备:
1、函数即“变量”
2、高阶函数
3、嵌套函数
高阶函数+嵌套函数=》装饰器
‘‘‘
importtime
deftimmer(func):
defwarpper(*args,**kwargs):
start_time=time.time()
func()
stop_time=time.time()
print("thefuncruntimeis%s"%(stop_time-s..
分类:
编程语言 时间:
2017-04-20 12:18:44
阅读次数:
210
学习装饰器前提需要了解高阶函数,函数嵌套,函数闭包 python函数装饰器,顾名思义就是装饰函数,为函数添加新功能的的一种方式。 为什么要使用装饰器呢? 因为函数在运行时,如果不使用装饰器对函数进行功能添加,需要修改函数源代码,这样修改无疑会增加程序的冗余和复杂性,也不便于程序员对其进行修改。使用装 ...
分类:
编程语言 时间:
2017-04-19 00:31:08
阅读次数:
232