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

哪个做h5的网站好用宁夏找人做网站多少钱

哪个做h5的网站好用,宁夏找人做网站多少钱,网站加速器推荐,iis网站域名访问示例 7-15 定义了一个装饰器#xff0c;它会在每次调用被装饰的函数时计时#xff0c;然后把经过的时间、传入的参数和调用的结果打印出来。示例 7-15 一个简单的装饰器#xff0c;输出函数的运行时间importtimedefclock(func):def clocked(*args): #➊t0 time.perf_counte…示例 7-15 定义了一个装饰器它会在每次调用被装饰的函数时计时然后把经过的时间、传入的参数和调用的结果打印出来。示例 7-15 一个简单的装饰器输出函数的运行时间importtimedefclock(func):def clocked(*args): #➊t0 time.perf_counter()result func(*args) #➋elapsed time.perf_counter() -t0name func.__name__arg_str ,.join(repr(arg) for arg inargs)print([%0.8fs] %s(%s) - %r %(elapsed, name, arg_str, result))returnresultreturn clocked #➌❶ 定义内部函数 clocked它接受任意个定位参数。❷ 这行代码可用是因为 clocked 的闭包中包含自由变量 func。❸ 返回内部函数取代被装饰的函数。示例 7-16 演示了 clock 装饰器的用法。示例 7-16 使用 clock 装饰器#clockdeco_demo.pyimporttimefrom clockdeco importclockclockdefsnooze(seconds):time.sleep(seconds)clockdeffactorial(n):return 1 if n 2 else n*factorial(n-1)if __name____main__:print(* * 40, Calling snooze(.123))snooze(.123)print(* * 40, Calling factorial(6))print(6! , factorial(6))运行示例 7-16 得到的输出如下$ python3 clockdeco_demo.py**************************************** Calling snooze(123)[0.12405610s] snooze(.123) -None**************************************** Calling factorial(6)[0.00000191s] factorial(1) - 1[0.00004911s] factorial(2) - 2[0.00008488s] factorial(3) - 6[0.00013208s] factorial(4) - 24[0.00019193s] factorial(5) - 120[0.00026107s] factorial(6) - 7206! 720工作原理记得吗如下代码clockdeffactorial(n):return 1 if n 2 else n*factorial(n-1)其实等价于deffactorial(n):return 1 if n 2 else n*factorial(n-1)factorial clock(factorial)因此在两个示例中factorial 会作为 func 参数传给 clock(参见示例 7-15)。然后 clock 函数会返回 clocked 函数Python 解释器在背后会把 clocked 赋值给 factorial。其实导入clockdeco_demo 模块后查看 factorial 的 __name__ 属性会得到如下结果 importclockdeco_demo clockdeco_demo.factorial.__name__clocked所以现在 factorial 保存的是 clocked 函数的引用。自此之后每次调用 factorial(n)执行的都是 clocked(n)。clocked 大致做了下面几件事。(1) 记录初始时间 t0。(2) 调用原来的 factorial 函数保存结果。(3) 计算经过的时间。(4) 格式化收集的数据然后打印出来。(5) 返回第 2 步保存的结果。这是装饰器的典型行为把被装饰的函数替换成新函数二者接受相同的参数而且(通常)返回被装饰的函数本该返回的值同时还会做些额外操作。示例 7-15 中实现的 clock 装饰器有几个缺点不支持关键字参数而且遮盖了被装饰函数的 __name__ 和 __doc__ 属性。示例 7-17 使用functools.wraps 装饰器把相关的属性从 func 复制到 clocked 中。此外这个新版还能正确处理关键字参数。示例 7-17 改进后的 clock 装饰器#clockdeco2.pyimporttimeimportfunctoolsdefclock(func):functools.wraps(func)def clocked(*args, **kwargs):t0time.time()result func(*args, **kwargs)elapsed time.time() -t0name func.__name__arg_lst[]ifargs:arg_lst.append(,.join(repr(arg) for arg inargs))ifkwargs:pairs [%s%r % (k, w) for k, w insorted(kwargs.items())]arg_lst.append(,.join(pairs))arg_str ,.join(arg_lst)print([%0.8fs] %s(%s) - %r %(elapsed, name, arg_str, result))returnresultreturn clockedfunctools.wraps 只是标准库中拿来即用的装饰器之一。下一节将介绍 functools 模块中最让人印象深刻的两个装饰器lru_cache 和singledispatch。
http://www.sadfv.cn/news/126450/

相关文章:

  • 哪个品牌网站设计感强做一个卖货的app要多少钱
  • 网站建设服务器需要钱吗多用户购物商城
  • 西安网站建设优化服务公司动漫设计专升本
  • 可以做装修效果图的网站seo对网络推广的作用是什么?
  • 仿5173网站wordpress相关的网站
  • 地铁建设网站装修案例视频
  • 顺义区网站建设知名的网页制作公司哪家好
  • 基层建设期刊在哪个网站上检索好的建筑设计网站推荐
  • 宁夏找人做网站多少钱广告网站留电话整人
  • 湖北省建设厅官方网站电话成品人和精品人的区别在哪
  • 推广做网站联系方式关于网站建设电话销售的话术
  • 网站建设网页如何做好外贸网站建设
  • 做电商网站前端的技术选型是广安做网站
  • 网站建设培训中心青岛手机端网络推广培训
  • 郑州网站搭建扁平化网站设计方案
  • 制作网站用什么软件好手机网站的必要性
  • 漂亮的数据型网站宁波建网站推荐
  • 莱芜住房和城乡建设部网站网站被采集
  • 仿制型模板网站服装定制流程
  • 微小店适合卖做分类网站吗公司公众网站微信平台建设方案
  • asp.net 网站管理工具 安全深圳物流公司查询大全
  • 58同城网站建设思路免费自助网站
  • 溧阳建设局网站6江苏盐城网络科技有限公司
  • 深圳专门网站建设金华网站建设外包
  • 网上网站代码可以下载吗万维网网站注册
  • 珠海网站制作品牌策划网站推广教学
  • 正在建设的网站可以随时进入吗织梦网站自适应怎么做
  • 住房公积金网站怎么做减员建筑人才网官方网站中国建筑科学院有限公司认证中心
  • 江门企业做网站解决wordpress慢
  • 基于开源框架的网站开发如何 建设一个网站