当前位置:首页  >  技术干货  >  Python技术干货  > python 类方法

python 类方法

来源:千锋教育
发布时间:2023-11-08 06:30:42
分享

定义:在类里面把一个方法绑定给类,说白了类方法是给类用的,该方法由装饰器@classmethod所装饰,类.绑定

到类的方法(),会把类本身当做第一个参数自动传给绑定到类的方法中。

classA:#创建父类

x=1

@classmethod#使用装饰器,变为类的绑定方法

deftest(cls):#定义了类的方法

print(cls,cls.x)#拿掉一个类的内存地址后,就可以实例化或者引用类的属性了

classB(A):#子类B,B中没有test类的绑定方法,就去父类中找,并将类名当第一个位置参数自动传到方法里

x=2

B.test()#调用test类的绑定方法

print(B.test)#查看B.test的属性

-------------输出结果----------------

2

>#test是A的绑定方法,这里B继承了

应用场景:

classDate:

def__init__(self,year,month,day):

self.year=year

self.month=month

self.day=day

@classmethod

defnow(cls):

t=time.localtime()

obj=cls(t.tm_year,t.tm_mon,t.tm_mday)

returnobj

@classmethod

deftomorrow(cls):

t=time.localtime(time.time()+86400)

obj=cls(t.tm_year,t.tm_mon,t.tm_mday)

returnobj

classEuroDate(Date):#__str__,打印由这个类产生的对象时,会触发执行

def__str__(self):#定义在类内部,必须返回一个字符串类型

return"年:%s,月:%s,日:%s"%(self.year,self.month,self.day)

e1=EuroDate(2016,12,13)#实例化对象e1

print(e1)

e2=EuroDate.now()#调用类的绑定方法,并赋值给e2

print(e2)#打印返回结果

e3=EuroDate.tomorrow()#调用类的绑定方法,并赋值给e3

print(e3)#打印返回结果

print(EuroDate.now)#查看数据类型

print(EuroDate.tomorrow)#查看数据类型

以上内容为大家介绍了python类方法,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • python中如何将华氏温度转换为摄氏温度? 我们都知道表示温度的方式除了摄氏温度还有华氏温度。摄氏温度c,将其转化为华氏温度f,转换公式为:f=c*9/5+32。华氏度比摄氏度较小,一华氏度等于5/9摄氏度,彼此间的转换很容易。将摄氏度转成华氏
  • python中seed随机函数如何生成随机数? 如果要考察某公司的牛奶产品质量,可以从100袋牛奶中抽取30袋,在随机数表中选中一数,并用向上、下、左、右不同的读法组成30个数,并按牛奶的标号进行检测,虽然麻烦,但很常用。在日常生活中,随机数起着很
  • python中的shuffle怎么用? 在计算机中,机器学习训练是以每个batch为训练单位,并反向传播一次。将一个batch看作一次学习过程,怎么才能学的好呢,当然是学习对的东西,也就是样本要尽可能接近真实的概率分布(模型学习的本质就是去
  • python中的yield详解 上篇我们说到了python中的return,它在程序函数中返回某个值,返回之后函数不在继续执行,彻底结束。那你知不知道在python中还有一种返回值的方法,那就是yield。带有yield的函数是一个
  • python更新不了数据库解决方法 问题:在使用Python操作MySQL数据时,需要进行update操作,执行完后发现,更新并没有成功,但是进行查询操作就就可以成功。解决方法:如果要进行更新的操作,那么必须要在执行完sql后,加上co
  • python高并发怎么解决 某个时间段内,数据涌来,这就是并发。如果数据量很大,就是高并发高并发的解决方法:1、队列、缓冲区假设只有一个窗口,陆续涌入食堂的人,排队打菜是比较好的方式所以,排队(队列)是一种天然解决并发的办法排队