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

什么视频网站可以做链接地址seo经理招聘

什么视频网站可以做链接地址,seo经理招聘,看企业网站怎么做到百度秒收,石家庄做外贸的网站推广复习日 知识点回顾 类的装饰器装饰器思想的进一步理解:外部修改、动态类方法的定义:内部定义和外部定义 作业:复习类和函数的知识点,写下自己过去29天的学习心得,如对函数和类的理解,对python这门工具的理解…

复习日

知识点回顾

  1. 类的装饰器
  2. 装饰器思想的进一步理解:外部修改、动态
  3. 类方法的定义:内部定义和外部定义

作业:复习类和函数的知识点,写下自己过去29天的学习心得,如对函数和类的理解,对python这门工具的理解等,未来再过几个专题部分我们即将开启深度学习部分。

既然函数可以复用,有了类和装饰器,那么类还能进一步封装么?可以的,类也有装饰器


回顾一下,函数的装饰器是:接收一个函数,返回一个修改后的函数。我们之前是用复用的思想来看装饰器的,换一个角度理解,当你想修改一个函数的时候,可以通过装饰器方法来修改而无需重新定义这个函数。
类也有修饰器,他的逻辑类似:接收一个类,返回一个修改后的类。例如

  1. 添加新的方法或属性(如示例中的Iog方法)。
  2. 修改原有方法(如替换int方法,添加日志)。
  3. 甚至可以返回一个全新的类(继承或组合原类)。

通过类装饰器,可以在不修改类内部代码的情况下,为多个类统一添加功能(如日志、统计)

 

# 定义类装饰器:为类添加日志功能
def class_logger(cls):# 保存原始的 __init__ 方法original_init = cls.__init__def new_init(self, *args, **kwargs):# 新增实例化日志print(f"[LOG] 实例化对象: {cls.__name__}")original_init(self, *args, **kwargs)  # 调用原始构造方法# 将类的 __init__ 方法替换为新方法cls.__init__ = new_init# 为类添加一个日志方法(示例)def log_message(self, message):print(f"[LOG] {message}")cls.log = log_message  # 将方法绑定到类,这是一种将外部函数添加为类的属性的方法return cls# 定义简单打印类,应用装饰器
# 同样是语法糖的写法
@class_logger
class SimplePrinter:def __init__(self, name):self.name = name  # 构造方法:初始化名称def print_text(self, text):"""简单打印方法"""print(f"{self.name}: {text}")# 使用示例
printer = SimplePrinter("Alice")  # 实例化时触发装饰器的日志
printer.print_text("Hello, World!")  # 调用普通方法
printer.log("这是装饰器添加的日志方法")  # 调用装饰器新增的方法

 

注意到其中的cls.log=log_message这行代码,他把外部的函数赋值给了类的新定义的属性,这里我们介绍这种写法
实际上,定义类的方法,有2类写法:

  1. 在类定义内部直接写方法,这是静态方法,一般定义类都这么完成。
  2. 在类定义外部定义方法,然后把方法赋值给类的属性--这是一种动态方法,常在装饰器中使用,可以再外部修改类的方法。

 

 两种方式的本质都是将函数对象绑定到类的属性上,只是语法和应用场景不同。装饰器中常用外部赋值,是为了在不修改原类代码的情况下增强类的功能。


ps:之前无论是函数还是类的装饰器,我们都发现是先有装饰器,再有类。那既然我们说了装饰器除了让原本的代码更加清晰可读可复用,还具有修改函数0类的功能。那如何修改之前已经写好的类o函数呢?


所以你还是需要理解装饰器本质就是一个语法糖,对类而言:@decorator语法只是MyClass=decorator((MyClass)的简写,即使类已定义,仍可手动调用装饰器函数修改它。


总结:装饰器的核心是动态修改类/函数,而不改变原代码。通过外部赋值,可以在不修改类定义的前提下,为类添加新方法或修改已有方法。-理解动态的含义

@浙大疏锦行

http://www.dtcms.com/wzjs/318804.html

相关文章:

  • 代理报关的货怎么在网站上做电子委托白酒营销策划方案
  • 网站建设和管理培训武汉网络推广外包公司
  • 朝阳专业做网站如何做品牌运营与推广
  • 网站上的在线答题是怎么做的上海网络推广培训机构
  • 网站建设必知怎样做网站的优化、排名
  • 网站建设申请方案文样天津百度网站排名优化
  • 网站建设各部门职责策划百度seo排名点击
  • 十大免费ppt网站在线发稿平台
  • 合肥建行网站seo网站推广的主要目的
  • 南通高端网站建设开发评论优化
  • 苹果网站设计风格简述最近实时热点新闻事件
  • 58同城网招聘找工作建筑工程seo的宗旨是什么
  • 如何提高网站的安全性资源网站优化排名软件公司
  • 网站建设公司ejiewseo关键词优化哪个平台好
  • 微信上做网站产品推广策划书
  • 南京市浦口区建设局网站电商详情页模板免费下载
  • 请人做网站 出现纠纷怎么办新媒体运营培训
  • 衡水龙华的网站建设全网推广外包公司
  • 福州做网站设计免费网络营销软件
  • 河北省住房和城乡建设委员会网站百度账号一键登录
  • vs做的网站案例百度热搜关键词
  • 一元购网站建设多少钱四川企业seo
  • 海口网站运营托管公司重庆网站搜索排名
  • 郑州现在可以正常出入吗网站内容如何优化
  • 北京网站设计我选柚米百度热搜广告位多少钱
  • 企业所得税怎么算出来云seo关键词排名优化软件
  • 顺的网站建设咨询拓客公司联系方式
  • 电大亿唐网不做网站做品牌免费模式营销案例
  • WordPress主题显示问题北京seo相关
  • 网站建设中所涉及的所有链接建设企业品牌推广网站