python实例方法调用类方法_python 实例方法 类方法 静态方法

本文介绍了Python中的类方法、静态方法和实例方法,包括它们的定义、调用方式和使用场景。类方法通过@classmethod修饰,使用cls参数,不直接操作实例属性;实例方法至少包含self参数,主要用于对象操作;静态方法通过@staticmethod修饰,与类和实例无关,不接收self或cls参数。此外,还提到了@property装饰器用于创建只读属性。
摘要由CSDN通过智能技术生成

1、 Python中的7种可调用对象

Python中有七种可调用对象,可调用对象可使用内置函数callable来检测

用户自定义的函数:使用def语句或者lambda表达式创建的函数。

内置函数:使用C语言实现的函数,如len、sum或者time.strftime

内置方法:使用C语言实现的方法,如dict.get()

类方法:在类的定义体中定义的函数

类:在调用类时会运行类的__new__方法创建一个实例,然后运行__init__方法,初始化实例,最后把实例返回给调用方。Python中没有new运算符,所以调用类相当于调用函数。

类的实例:如果类定义了__call__方法,那么它的实例可以作为函数进行调用。并且__call__方法可以进行自定义重写。

生成器函数:使用yield关键字的函数或方法。调用生成器函数返回的是生成器对象。

2、python 类方法 静态方法

属性:

公有属性 (属于类,每个类一份)

普通属性 (属于对象,每个对象一份)

私有属性 (属于对象,跟普通属性相似,只是不能通过对象直接访问)

方法:(按作用)

构造方法:__init__()

析构函数:__del__()

python中的方法:

类方法也可以进行细致的划分,具体可分为类方法、实例方法和静态方法。采用 @classmethod 修饰的方法为类方法;采用 @staticmethod 修饰的方法为静态方法;不用任何修改的方法为实例方法。

其中 @classmethod 和 @staticmethod 都是函数装饰器

接下来介绍这 3 种类方法。

实例方法(普通方法):默认有个self参数,且只能被对象调用。

静态方法: 用 @staticmethod 装饰的不带 self 参数的方法叫做静态方法,类的静态方法可以没有参数,可以直接使用类名调用,不需要创建对象,不会隐式传递self,也不能访问类属性。

类方法:用 @classmethod 装饰的带 self 参数的方法叫做类方法,默认有个 cls 参数,可以被类和对象调用,类方法中的self是类本身,调用方法时传的值也必须是类的公有属性,就是说类方法只能操作类本身的公有字段

实例方法中的特殊方法:

1、私有方法(方法前面加两个下划线)

2、属性方法:property属性函数(@property修饰),它是实例方法中的特殊方法。

类实例方法

通常情况下,在类中定义的方法默认都是实例方法,类的构造方法理论上也属于实例方法,只不过它比较特殊。

比如,下面的类中就用到了实例方法:

classTest(object):#类构造方法,也属于实例方法

def __init__(self):

self.name= "name"self.add= ""

#下面定义了一个say实例方法

defcall(self):print(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值