装饰器的应用
装饰器的应用 1. 装饰器实现一个函数计时器 2. 创建add_log装饰器 3. 层层装饰的装饰器 4. 利用装饰器实现登陆系统 5. 利用装饰器实现整形数的输入 6. 带参数的装饰器 7. 多个装饰器的练习 1. 装饰器实现一个函数计时器 1.被装饰的函数有返回值怎么办 2.如何保留被装饰函数的函数名和帮助信息文档 @functools.wraps(func) 这是python提供的装饰器。它能把原函数的元信息拷贝到装饰器里面的 func 函数中。函数的元信息包括docstring、name、参数列表等等。可以尝试去除@functools.wraps(func),你会发现test.__name__的输出变成了wrapper import time import random import string import functools #保留被装饰函数的函数名和帮助信息文档(注释) #不处理时,被装饰函数的函数名和注释不会显示 li = [ random . choice ( string . ascii_letters ) for i in range ( 100 ) ] #定义一个装饰器 def timeit ( func ) : #给装饰器一个系统的装饰器,这样的话,被这个装饰器装饰的函数名就不会被覆盖 @functools . wraps ( func ) def