python-装饰器作业day12

#第一题:
flag=False
def login(func):
    def inner(*args,**kwargs):
        global flag
        if flag:
            ret=func()
            return ret
        else:
            username=input("username:")
            password=input("password:")
            if username=="orange" and password=='123':
                flag=True
                ret=func()
                return ret
            else:
                print("登陆失败")
    return inner
@login
def shop_add():
    print("增加一个产品")
@login
def shop_del():
    print("减少一个产品")
shop_add()
shop_del()

#第二题
import datetime
def log(func):
    def inner(*args,**kwargs):
        now_time=datetime.datetime.now() #获取当前时间
        with open('log','a',encoding="utf-8") as f:
            f.write(str(now_time)+':'+func.__name__+'\n')
        ret =func()
        return ret
    return inner
@log
def shop_add():
    print("增加一个产品")
@log
def shop_del():
    print("减少一个产品")
shop_add()
shop_del()

#第三题
from urllib.request import urlopen
def get(url):
    code=urlopen(url).read
    return code
ret= get("http://www.baidu.com")
print(ret)

 

转载于:https://www.cnblogs.com/orange126/p/10865338.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值