python开发函数进阶:装饰器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python开发函数进阶:装饰器相关的知识,希望对你有一定的参考价值。
一,装饰器本质
闭包函数
功能:就是在不改变原函数调用方式的情况下,在这个函数前后加上扩展功能
二,设计模式
开放封闭原则
*对扩展是开放的
*对修改是封闭的
三,代码解释
1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 4 tag = False 5 6 def login(func): 7 def inner(*args,**kwargs): 8 global tag 9 if tag == False: 10 user = input(‘please your username>>>:‘) 11 pwd = input(‘please your password>>>:‘) 12 f = open(‘aaa‘,‘r‘,encoding=‘utf-8‘) 13 for i in f: 14 user_pwd = eval(i) 15 if user == user_pwd[‘name‘] and pwd == user_pwd[‘password‘]: 16 tag = True 17 f.close() 18 if tag: 19 ret = func(*args,**kwargs) 20 return ret 21 return inner 22 23 @login 24 def haha(*args,**kwargs): 25 print(‘中国动漫‘) 26 pass 27 28 @login 29 def hengheng(*args,**kwargs): 30 print(‘美国动漫‘) 31 pass 32 ##########用户调用方式 33 haha() 34 hengheng()
以上是关于python开发函数进阶:装饰器的主要内容,如果未能解决你的问题,请参考以下文章