python 笔记:cls VS self

cls

  • 用于类方法
    • cls 通常作为类方法(用 @classmethod 装饰)中的第一个参数。
    • 它指代调用该方法的类本身,无论该类有没有被实例化
  • 访问类级别的属性和方法
    • 通过 cls,可以访问类级别的属性和方法。
    • 可以通过 cls.params 访问类的属性 params,或者通过 cls(config) 创建一个新的类实例。
  • 隐式传入
    • ​​​​​​​​​​​​​​ 调用类方法时,Python 会自动将类作为 cls 传入

self

  • 用于实例方法
    • self 是实例方法中的第一个参数,用于指代方法所属的实例
  • 访问实例级别的属性和方法
    • ​​​​​​​ 通过 self,可以访问实例级别的属性和方法。
    • 例如,self.name 可以访问实例的属性 nameself.some_method() 可以调用实例的方法 some_method
  • 隐式传入
    • ​​​​​​​​​​​​​​ 调用实例方法时,Python 会自动将实例作为 self 传入
相关推荐
power 雀儿1 小时前
大模型基础:概念理解与 C++Token 化实现笔记
笔记
saoys1 小时前
Opencv 学习笔记:轮廓筛选 + 拟合(边界框 / 最小矩形 / 包围圆)
笔记·opencv·学习
崎岖Qiu1 小时前
【深度剖析】:结合 Spring Bean 的生命周期理解 @PostConstruct 的原理
java·笔记·后端·spring·javaee
蒸蒸yyyyzwd2 小时前
mapreduce步骤学习总结
笔记
saoys3 小时前
Opencv 学习笔记:轮廓发现(提取 + 绘制全流程)
笔记·opencv·学习
zhangrelay4 小时前
如何让手机电脑流畅飞起低碳节能性能拉满-软件安装篇-ESR-Extended Support Release-延长支持版-LTS
linux·运维·笔记·学习
@––––––4 小时前
论文阅读笔记:The Bitter Lesson (苦涩的教训)
论文阅读·人工智能·笔记
傻小胖5 小时前
6.BTC-网络-北大肖臻老师客堂笔记
笔记·web3·区块链
Lonely 净土5 小时前
第5-10天学习笔记
笔记·学习
EmbedLinX5 小时前
内存池学习笔记(附C++完整实现)
c++·笔记·学习