当前位置: 首页 > news >正文

免费的动态ppt网站惠州网站建设

免费的动态ppt网站,惠州网站建设,国内推广,东莞手机端建站模板# 装饰器形成的过程 : 最简单的装饰器 有返回值得 有一个参数 万能参数# 装饰器的作用# 原则 #xff1a;开放封闭原则# 语法糖#xff1a;装饰函数名# 装饰器的固定模式 import time # time.time() # 获取当前时间 # time.sleep() # 等待 # 装饰带参数的装饰器 def timer…# 装饰器形成的过程 : 最简单的装饰器 有返回值得 有一个参数 万能参数# 装饰器的作用# 原则 开放封闭原则# 语法糖装饰函数名# 装饰器的固定模式 import time # time.time() # 获取当前时间 # time.sleep() # 等待 # 装饰带参数的装饰器 def timer(f): # 装饰函数def inner(*args,**kwargs):start time.time()ret f(*args,**kwargs) # 被装饰函数end time.time()print(end-start)return retreturn inner timer # 语法糖 装饰器函数名 在被装饰函数的上面 def func(a): # 被装饰的函数time.sleep(0.1)print(哈哈哈)return hello# func timer()ret func() # inner print(ret)   # 装饰器的作用 不想修改函数的调用方式 但是还想再原来的函数前后添加功能# timmer 就是一个装饰函数只是对一个函数 有一些装饰作用# 原则开放封闭原则# 开放对扩展是开放的# 封闭对修改是封闭的# 装饰器的固定模式 def wrapper(f): # 装饰器函数,f是被装饰的函数def inner(*args,**kwargs):在被装饰函数之前要做的事ret f(*args,**kwargs) # 被装饰的函数在被装饰函数之后要做的事return retreturn innerwrapper # func_name wrapper(func_name) def func_name():print(123)ret func_name   装饰器的进阶# functools.wraps# 带参数的装饰器# 多个装饰器装饰同一个函数 wrapsdef wahaha():打印这个函数pass print(wahaha.__name__) # 查看字符串格式函数名 print(wahaha.__doc__) # 查看函数注释from functools import wraps # 引入wraps全局被装饰的函数也能使用 def wrapper(f):wraps(f) # 在这里装饰inner 作用保留原有函数的名称和docstringdef inner(*args,**kwargs):在被装饰函数之前要做的事ret f(*args,**kwargs)在被装饰函数之后要做的事return retreturn innerwrapper # func_name wrapper(func_name) def func_name():print(123)ret func_nameprint(func_name.__name__) # 带参数的装饰器 import time # 引入时间模块 flage False # 定义一个全局变量 def timer_out(flage): 装饰器函数外面在裹一个函数def timer(func):def inner(*args,**kwargs):if flage: # 加个判断start time.time()ret func(*args,**kwargs)end time.time()print(end-start)return retelse:ret func(*args,**kwargs)return retreturn innerreturn timertimer_out(flage) #这里要明白 timer_out(flage) timer 所以还是timer def wahaha():time.sleep(0.1)print(hehei)timer_out(flage) def hel():time.sleep(0.1)print(lalala)wahaha() hel() # 多个装饰器装饰一个函数 def wrapper1(func):def inner1():print(wrapperl,before func)func()print(wrapper1 after func)return inner1def wrapper2(func):def inner2():print(wrapper2,before func)func()print(wrapper2 after func)return inner2wrapper1 wrapper2 #距离最近的先执行这个要好好理解执行变化 def f():print(in f) f() # 1.编写装饰器为多个函数加上认证的功能用户的账户密码来源于文件要求登录成功一次后续的函数都无需再输入用户名和密码 flat False #定义一个全局变量 好像其他也能代替 def login(func):def inner(*args,**kwargs):global flat # 这里不能用nonlocal声明先登录程序if flat:ret func(*args,**kwargs)return retelse:username input(username:)password input(password:)if username boss and password 666666:flat Trueret func(*args,**kwargs)return retelse:print(登录失败)return innerlogin def shoplist_add():print(增加一件物品) login def shoplist_del():print(删除一件物品)shoplist_add() shoplist_del() # 2.编写装饰器为多个函数加上记录调用功能要求每次调用函数都将被调用的函数名称写入文件 def log(func):def inner(*args,**kwargs):with open(log,a,encodingutf-8) as f:f.write(func.__name__\n)ret func(*args,**kwargs)return retreturn innerlog def shoplist_add():print(增加一件物品) log def shoplist_del():print(删除一件物品)   # 进阶作业选做# 1.编写下载网页内容的函数要求功能是用户传入一个URL函数返回下载页面的结果 from urllib.request import urlopen def get(url):code urlopen(url).readreturn code ret get(http://www.baidu.com) print(ret) #2.为题目1编写装饰器实现缓存网页内容的功能# 具体实现下载的页面存放于文件中如果文件内有值文件大小不为0就优先从文件中读取网页内容否则就去下载然后 import os from urllib.request import urlopen def cache(func):def inner(*args,**kwargs):if os.path.getsize(web_cache):with open(web_cache,rb) as f:return f.read()ret func(*args,**kwargs)with open(web_cache,wb) as f:f.write(ret)return retreturn innercache def get(url):code urlopen(url).read()return coderet get(http://www.baidu.com) print(ret)  转载于:https://www.cnblogs.com/niunai/p/10553947.html
http://www.zqtcl.cn/news/624572/

相关文章:

  • 圆通我做网站拉上海建站系统
  • 对于做网站有什么要求新闻发布会视频
  • 网站建设专业就业前景成都房产信息网 官网
  • 西宁网站建设公司排行网站查询域名ip解析
  • 柳州企业网站开发公司如何做网站首页图
  • 刷赞网站空间免费深圳网站制作公司排名
  • 网站内部优化策略获取网站的路径
  • 网站群 优点今天西安最新通告
  • 惠济免费网站建设设计制作的广告公司
  • 做一个网站建设装潢设计属于什么专业
  • 水处理网站源码注册销售公司流程和费用
  • 诸城网站建设0536s整站优化seo排名点击
  • 企业建设网站需注意哪些内容苏州网站怎么做
  • 浏览器打开网站网站推广软件工具
  • 网站主题编辑工具WordPress公司网站策划方案
  • 做旅游网站选什么空间搜索引擎优化策略有哪些
  • 网站备案多少钱安全网站建设与服务的关系
  • 手机端网页设计尺寸规范优化seo排名
  • 做网站业务提成多少厦门十大装修公司排名榜
  • 为什么用开源建站wordpress rss 插件
  • 语文建设投稿网站南昌做网站的公司多不多
  • 石家庄网站建设的公司功能性质网站
  • 企业网站主页模板装饰公司名字起名大全
  • 马鞍山网站设计价格如何在微信公众号内部做网站
  • 申请网站建设经费的报告生态建设网站
  • 建网站要多少钱用自己的服务器河北工程大学网站开发成本
  • 宁波网站建站公司商务网站模块设计时前台基础设施建设不包括
  • 徐州免费网站制作怎么用阿里云服务器搭建wordpress
  • php猎奇源码 织梦新闻视频图片八卦娱乐趣事资讯门户网站模板html代码表格
  • 南通做网站优化哪家好网页策划书 网站建设定位