装饰器的小练习

Posted zyyhxbs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了装饰器的小练习相关的知识,希望对你有一定的参考价值。

qq = '太上老君': '123456'
wx = '元始天尊': '123456'
def zsqout(way):
    if way.upper() == 'QQ':
        def zsq(func):
            def inner():
                time = 3
                while time > 0:
                    username = input('请输入账号:')
                    psw = input('请输入密码:')
                    if qq.get(username) == psw:
                        return func()
                    else:
                        time -= 1
                return False
            return inner
        return zsq
    elif way.upper() == 'WX':
        def zsqwx(func):
            def inner():
                time = 3
                while time > 0:
                    username = input('请输入账号:')
                    psw = input('请输入密码:')
                    if wx.get(username) == psw:
                        return func()
                    else:
                        time -= 1
                return False
            return inner
        return zsqwx
@zsqout('qq')
def diary():
    print('欢迎访问diary~~~~')
@zsqout('wx')
def comment():
    print('欢迎访问comment~~~~')
@zsqout('qq')
def home():
    print('欢迎访问home~~~~')

diary()
comment()
home()

以上是关于装饰器的小练习的主要内容,如果未能解决你的问题,请参考以下文章

python装饰器的小细节

Python关于装饰器的练习题

python三大器之装饰器的练习

python装饰器练习

Python小脚本基于装饰器的函数日志脚本

Python小脚本基于装饰器的函数日志脚本