python学习笔记-02

1.装饰器

python学习笔记-02
#装饰器
def wrapper(func):
    def inner(*args,**kwargs):
        return func(*args,**kwargs)
    return inner

@wrapper
def func():
    pass
View Code
#装饰器
from functools import wraps
def wrapper(func):
    @wraps(func)
    def inner(*args,**kwargs):
        print("在被装饰函数执行前做的事情")
        ret = func(*args,**kwargs)
        print("在被装饰函数执行后需要做的事情")
        return ret
    return inner

@wrapper
def holiday(day):
    print("放假%s天"%day)
    return "好开心"
res = holiday(5)
print(res)
print(holiday.__name__)

 2.生成器

python学习笔记-02
def gener():
    print(123)
    conten = yield 1
    print('$$$',conten)
    print(456)
    yield 2

g = gener()
ret = g.__next__()
print('***',ret)
ret = g.send('hello')
print('&&&',ret)
#执行上面的代码返回的结果
# 123
# *** 1
# $$$ hello
# 456
# &&& 2
#使用send的注意事项
    #第一次使用的生成器的时候,用next获取下一个值
    #最后一个yield不接收外部的值
View Code

 

上一篇:替换IScroll


下一篇:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?