정의: 본질적으로 함수입니다. (데코레이터 기타 함수)는 다른 함수에 추가 기능을 추가하는 것입니다.
원칙: 1. 데코레이팅된 함수의 소스 코드는 수정할 수 없습니다.
2. 데코레이팅된 함수의 호출은 변경할 수 없습니다. 수정된 메소드
import time def timer(hello): def func(*args,**kwargs): #函数传参,不限个数。 start = time.time() hello(*args,**kwargs) #函数传参,不限个数。 end = time.time() print("运行时间:%s"%(end - start)) return func @timer def hello(): time.sleep(2) print("nihao") hello()
참고: 데코레이터는 데코레이팅된 함수 위에 작성되어야 합니다.
소규모 실험: 비밀번호 확인
import time user = { #存储用户名和密码 "luozeng":'123', "xuemanfei":'456', "xutian":'789' } def yanzheng(hello): def func(*args,**kwargs): start = time.time() username = input("请输入用户:").strip() #用户输入 password = input("请输入密码:").strip() if username in user and password == user[username]: #用户名和密码验证 print("登陆成功") hello(*args,**kwargs) else: exit("用户名或密码错误!") end = time.time() print("运行时间:%s"%(end - start)) return func @yanzheng def hello(): print("你好!") hello()
위 내용은 Python의 데코레이터에 대해 알아보기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!