python打卡day29

@疏锦行
知识点回顾

  1. 类的装饰器

类装饰器接收一个类,返回一个修改后的类。其主要作用是在不修改类内部代码的情况下,为多个类统一添加功能,如添加新的方法或属性、修改原有方法,甚至返回一个全新的类。例如 class_logger 装饰器为 SimplePrinter 类添加了日志功能,在实例化时打印日志,并新增了 log 方法。

  1. 装饰器思想的进一步理解:外部修改、动态

装饰器本质是一种语法糖,核心是动态修改类或函数,而不改变原代码。对于类而言, @decorator 语法是 MyClass = decorator(MyClass) 的简写,即使类已定义,仍可手动调用装饰器函数修改它。通过外部赋值,可以在不修改类定义的前提下,为类添加新方法或修改已有方法。

  1. 类方法的定义:内部定义和外部定义

内部定义 :在 class 块内使用 def 定义方法,这是常规的类定义方式。方法可以直接访问类的其他私有成员,类定义后方法固定,常用于常规类定义。
外部定义 :定义函数后赋值给类属性(如 cls.fn = fn ),这是一种动态方法,常在装饰器、元类、动态编程中使用。需要通过 self 或类名显式访问类的成员,可以在运行时动态添加或修改方法。

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

相关推荐
Swift社区1 分钟前
Docker 构建 Python FastAPI 镜像最佳实践
python·docker·fastapi
MarkHD1 分钟前
Python RPA七日实战:用pyautogui打造第一个自动化脚本
python·自动化·rpa
m0_736919108 分钟前
实战:用Python分析某电商销售数据
jvm·数据库·python
乔江seven24 分钟前
【python轻量级Web框架 Flask 】1 Flask 初识
开发语言·后端·python·flask
Bruk.Liu24 分钟前
(LangChain实战3):LangChain阻塞式invoke与流式stream的调用
人工智能·python·langchain
岱宗夫up31 分钟前
Scrapy框架实战教程(上):从入门到实战,搭建你的第一个专业爬虫
爬虫·python·scrapy
Bruk.Liu32 分钟前
(LangChain实战4):LangChain消息模版PromptTemplate
人工智能·python·langchain
SunnyRivers32 分钟前
Asyncio 提速秘籍:用 run_in_executor 与 to_thread 巧解同步阻塞难题
python·asyncio·to_thread·run_in_executor
亚林瓜子36 分钟前
pyspark分组计数
python·spark·pyspark·分组统计
查无此人byebye40 分钟前
从零解读CLIP核心源码:PyTorch实现版逐行解析
人工智能·pytorch·python·深度学习·机器学习·自然语言处理·音视频