范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

functools模块的updatewrapper,让代码更友好亢保星

  #!/usr/bin/env python #-*- coding:utf-8 -*- """ ## 一 functools介绍 1、functools 模块可以说主要是为 函数式编程而设计,用于增强函数功能。 2、functools模块用以 为可调用对象(callable objects)定义高阶函数或操作。 3、functools下面包括:partial                     update_wrapper                     wraps                     reduce                     cmp_to_key                     lru_cache                     singledispatch ## 二 update_wrapper 介绍 1、 update_wrapper 字面意思:更新包装,具体意思为:更新函数的包装 2、 函数的包装是什么?函数的包装,就是在函数的外面,在包装一个函数 3、 为什么要更新外部的这个包装函数呢? """ """ ## 应用场景介绍: partial的功能:     用于创建一个偏函数,将函数包装一个可调用对象,返回结果也是可调用对象。     偏函数可以固定住原函数的部分参数,从而在调用时更简单。注意这句话最重要的是--固定部分参数     (关于partial方法,可以看我上一篇文章,我也同时在平台发了视频教程,请移步) partial 这个方法,就是在包装别的函数!!!来个具体的例子,一个班级内学生互相借笔的例子。 """ def borrow(student1,student2):     "同学一找同学二借笔!"     print(f"{student1}找{student2}借了一只铅笔!") """ 大家都找王五借铅笔,这样很累呀!这时候partial方法可以上线了,把王五这个参数进行固定。 """ from functools import partial borrowPenFromWangwu=partial(borrow,student2="王五") borrowPenFromWangwu("李四") """ 现在出现了一个问题:有一个新来的同学,他不知道怎么借铅笔,需要看一下这个两个方法的用法? """ print(borrow.__name__) """ 上边代码输出:borrow """ print(borrow.__doc__) """ 上面代码输出:同学一找同学二借笔! """ help(borrow) """ Help on function borrow in module __main__:  borrow(student1, student2)     同学一找同学二借笔! """ """ 通过这三个方法,他发现了borrow方法的用处。新来的同学,开始查看,borrowPenFromWangwu这个偏方法。 """ try:     print("我的name是:",borrowPenFromWangwu.__name__) except AttributeError:     print("no Name") """ 上面代码输出为:on Name。为什么这个方法没有name? """ print(borrowPenFromWangwu.__doc__) """ 上面代码输出为: partial(func, *args, **keywords) - new function with partial application     of the given arguments and keywords. 这也不是期望的东西呀,对borrowPenFromWangwu方法的理解毫无帮助。 """ help(borrowPenFromWangwu) """ class partial(builtins.object)  |  partial(func, *args, **keywords) - new function with partial application  |  of the given arguments and keywords. 输出很多,关于partial方法的信息,对borrowPenFromWangwu方法的理解毫无帮助。 """ """ 应该如何获取borrowPenFromWangwu,这个方法的说明?partial这个方法包装了borrow这个方法,返回的 结果命名为borrowPenFromWangwu, 通过help(borrowPenFromWangwu)这个方法,缺返回了partial这个方法的信息。 这时候我们就需要update_wrapper,这个方法来更新一下partial这个外包装。 """ from functools import update_wrapper # 开始更新外包装 update_wrapper(borrowPenFromWangwu, borrow) """ 查看外包装是否被更新了。 """ print("我的name是:",borrowPenFromWangwu.__name__) """ 上一行代码的输出:我的name是: borrow """ print(borrowPenFromWangwu.__doc__) """ 上一行代码的输出为:同学一找同学二借笔! """ help(borrowPenFromWangwu) """ Help on function borrow in module __main__:  borrow(student1, student2)     同学一找同学二借笔! """ """ 结论:这样新来的同学,就知道了借笔的方法。 这也是update_wrapper这个方法的用法了,一句话总结: 设置外部函数的__name__和__doc__属性,让代码对新人或者是健忘的人,更友好。 """

iPhone13最新售价确认,256G价格感人,果粉没有白等现在在手机市场上啊,不少的消费者都在逐渐的意识到手机运行内存空间的重要性了,不但能很大程度的影响到消费者的使用体验感,那可以说是对于手机产品的使用寿命表现情况也有着不小的影响情况表OPPOFindX5系列价格公布3999元起售OPPO新品发布会实况,目前OPPOFindX5系列的价格已经公布,中关村在线第一时间为您报道。FindX5新一代骁龙8处理器马里亚纳X哈苏,6。55英寸AMOLED屏幕。8GB1PXNSenseBudsX2混合主动降噪耳机手游玩家的新宠对于手游爱好者来说,耳机绝对是必不可少的装备之一,真无线耳机没有线材烦扰,携带连接方便,但目前市面上大部分真无线耳机,都会存在游戏延迟的通病,让我们的游戏体验大打折扣。针对这一现象听力不好,不愿戴助听器但是工作有时候很吃力怎么办?听力有损失请尽快配戴助听器,不戴助听器肯定在听别人说话的时候就比较费劲。那你觉得在与别人交谈的时候听不清而总是让人家大声说话和不断的重复比较丢人呢还是带上助听器和别人交谈自如丢人呢Nginx官方推荐的nginx。conf标准配置Nginx官方发布避免10大NGINX配置错误中,推荐nginx。conf配置为httpupstreamnodebackendzoneupstreams64Kserver127。0补短板弥弱项,实现高水平的科技自主创新编者按北斗微基站室内混合定位系统交通综合运行协调与应急指挥中心崇礼智慧交通平台系列空气消毒机近日,一系列高科技产品正服务于北京冬奥会的政府决策城市交通治理疫情防控等诸多领域。科技是欧洲新排放标准加速电动汽车竞争正文字数1151预计阅读时长5分钟oilprice网2月20日报道未来几年内,欧7措施有望出台,汽车制造商正转向电动汽车(EVs)领域,因为内燃机汽车(ICE)在未来欧洲汽车市场的人工智能的好处?未来那些繁重的重复的没有创造性艺术性的工作将会被人工智能逐步代替,比如建筑工人司机快递员保姆银行业务员电话客服仓库管理员收银员清洁工销售等工作。人工智能作为科技创新产物,在促进人类东数西算概念产业链龙头名单(值得收藏)自主可控与安全产业链中科曙光公司成立于2006年,主营业务是IT核心设备研发生产制造为基础,对外提供高端计算机存储安全数据中心等ICT基础设施产品,大力发展云计算大数据人工智能边缘大公司早报快手2022年广告收入目标590亿字节跳动28岁员工离世(整理胡毓靖)今天是2月24日星期四,过去24小时的大公司新闻包括字节跳动证实28岁员工离世,抢救41小时消息称阿里拟为Lazada融资10亿美元,因估值分歧取消谈判TikTok管OriginOSOcean系统用户都是怎么评价这系统的?文小伊评科技作为一个前NEX初代,IQOO第一代现IQOONeo5S,VIVOX70Pro的机主,陪伴VIVO度过了FuntouchOS到OriginOS的过渡,而且作为一个数码博
为什么特斯拉充电故障不能甩锅国家电网电流太大?2月1日上午,特斯拉客户支持发布微博向国家电网道歉。此前,南昌市涂先生的特斯拉汽车无故趴窝上了热搜自己购买了仅6天的特斯拉Model3,使用特斯拉官方超级充电桩充电后突然断电无法启与奥迪R8公用生产线奥迪etronGT意外首发按照原计划,奥迪etronGT原本应当在2月9日首发,不过日前新车的无伪装照曝光,这次意外首发也算是突然的惊喜了,新车是奥迪旗下第三款电动车型,和保时捷Taycan一样基于J1平台奥迪全新纯电动SUV来了特斯拉ModelY如何应对日前,奥迪Q4Sportbacketron的内饰曝光,可以看到新车在内饰设计方面基本延续了概念车上的风格,采用了奥迪家族广受好评的虚拟座舱设计,由三块尺寸可观的大屏组成。新车详解内既坚固又强硬利用细菌可制造汽车材料如果有人告诉你,细菌并不可怕,甚至还能制造出坚固耐受和有弹性的工程材料,你会怎么想?这并非一种幻想,而是南加州大学维特比工程学院(USCViterbiSchoolOfEnginee记录美好瞬间必备利器微博小姐姐都种草的Reno3Pro随着5G网络的正式商用,各家厂商的5G手机都轮番登场,不过要说近期热度最高的5G手机,OPPO即将发布的Reno3Pro无疑就获得了众多小伙伴的关注。在一次次的爆料中,Reno3P劳斯莱斯发布幻影天魄典藏版白天也能看银河日前,劳斯莱斯官方发布了幻影天魄典藏版(TempusCollection)车型。设计师将宇宙星空刺绣在车顶内部,并在副驾前方的幻影画廊上也融入了特殊设计同时新车还提供了深蓝色主题车梅赛德斯奔驰AMGOne合成图曝光售价或超4000万梅赛德斯AMGOne正离我们越来越近。作为奔驰公路车的技术旗舰,新车将在英国布里克斯沃思的梅赛德斯AMG高性能动力总成工厂内组装,计划生产275台,起售价为240万英镑(约合217废旧零件打造11布加迪8米高变形金刚谈起汽车文化,美国日本这些发达国家就不用说了,泰国虽然在经济等其他方面不太起眼,但论汽车文化却一点儿不拖后腿,不论是老车还是改装车,泰国人都玩儿得很有一套,而且还总能带来一些令人意马斯克成首富2021胡润全球富豪榜出炉日前,2021胡润全球富豪榜正式发布,该榜单对来自68个国家和地区的2402家公司的3228名亿万富翁进行了排名。纵览最新的榜单不难发现,智能电动汽车已经成为增长最快的行业之一,其V8三电机法拉利SF90Spider将于27日国内首发去年11月法拉利以线上形式发布了SF90Stradale的敞篷版本SF90Spider。如今这台史上最强劲的法拉利量产敞篷跑车,同时也是法拉利旗下首款量产插电式混合动力敞篷跑车,即外媒新加坡将从2025年起停止注册新的柴油车日前,新加坡副总理王瑞杰表示,新加坡计划在2040年前逐步淘汰汽油车和柴油车,加大对充电站的投资预算等激励措施,鼓励使用混合动力和纯电动等清洁能源汽车,以此作为该国减少温室气体排放