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 传入
相关推荐
崎岖Qiu1 分钟前
【计算机网络 | 第十二篇】「网络层」概述与服务模型
网络·笔记·计算机网络
远离UE417 分钟前
houdini hda 如何让模拟与虚幻物体进行碰撞
笔记·学习·houdini
崎岖Qiu2 小时前
【计算机网络 | 第十三篇】网络层服务的两种实现方式:无连接和面向连接
网络·笔记·计算机网络
山岚的运维笔记3 小时前
SQL Server笔记 -- 第65章:迁移 第66章:表值参数
数据库·笔记·sql·microsoft·sqlserver
前路不黑暗@3 小时前
Java项目:Java脚手架项目的登录认证服务(十三)
java·spring boot·笔记·学习·spring·spring cloud·maven
Hello_Embed5 小时前
Modbus 传感器开发:STM32F030 libmodbus 移植
笔记·stm32·学习·freertos·modbus
快乐zbc6 小时前
苍穹外卖 - 菜品起售/停售复习笔记
java·笔记
前路不黑暗@7 小时前
Java项目:Java脚手架项目的 B 端用户服务(十四)
android·java·开发语言·spring boot·笔记·学习·spring cloud
子辰ToT9 小时前
LearnOpenGL——高级光照(七)HDR
笔记·图形渲染·opengl
山岚的运维笔记10 小时前
SQL Server笔记 -- 第63章:事务隔离级别
数据库·笔记·sql·microsoft·oracle·sqlserver