Python类方法分三类:实例方法以self为首参、仅实例可调;类方法用@classmethod装饰、以cls为首参、类或实例均可调;静态方法用@staticmethod装饰、无self/cls、纯工具函数。

Python 类中的方法主要分为三类:实例方法、类方法和静态方法。它们在定义方式、调用主体和用途上各有不同,理解区别对合理设计类结构很关键。
实例方法(Instance Methods)
最常用的方法类型,第一个参数必须是 self,代表当前实例对象。它能访问和修改实例属性,也能调用其他实例方法或类属性。
- 定义时以 def 开头,首参数固定为 self
- 只能通过实例调用(如 obj.method()),不能直接用类名调用
- 可自由读写 self.xxx,也可通过 self.__class__.xxx 访问类属性
类方法(Class Methods)
用 @classmethod 装饰,第一个参数是 cls,代表当前类本身。适合操作类属性、实现替代构造器或需要影响整个类行为的逻辑。
- 定义时加 @classmethod,首参数为 cls
- 可通过类名或实例调用(Class.method() 或 obj.method())
- 常用于工厂方法,比如 datetime.fromtimestamp() 就是类方法
静态方法(Static Methods)
用 @staticmethod 装饰,不接收 self 或 cls 参数。本质上是“寄居”在类里的普通函数,与类或实例无数据绑定。
Magento是一套专业开源的PHP电子商务系统。Magento设计得非常灵活,具有模块化架构体系和丰富的功能。易于与第三方应用系统无缝集成。Magento开源网店系统的特点主要分以下几大类,网站管理促销和工具国际化支持SEO搜索引擎优化结账方式运输快递支付方式客户服务用户帐户目录管理目录浏览产品展示分析和报表Magento 1.6 主要包含以下新特性:•持久性购物 - 为不同的
立即学习“Python免费学习笔记(深入)”;
- 定义时加 @staticmethod,参数完全自定义
- 调用方式灵活,类名或实例均可(Class.func() 或 obj.func())
- 适合放与类逻辑相关但无需访问类/实例状态的工具函数,比如类型校验、格式转换
不复杂但容易忽略:方法类型由装饰器和参数约定共同决定,Python 不强制检查,写错参数名(如把 cls 写成 self)也不会报错,但运行时行为会异常。










