理解实例方法、类方法、静态方法

Python爬虫与文本分析工作坊 & 课题申报高级研修班

python中的高级语法有类和装饰器,今天我们学习一下实例方法、类方法和静态方法的区别。其中类方法和静态方法分别用了装饰器中的classmethod和staicmethod关键词。

在此之前我们先要理解实例和类的区别。比如人类是一种类,而刘慈欣是人类中的一员,刘慈欣就是一个类的实例。

理解实例方法、类方法、静态方法
实例方法
实例是类的具体例子,那么调用实例先要初始化,这里也叫做实例化。


daliu =Human()daliu

<__main__.Human at 0x1078727f0>

刘慈欣是人类的一员,是一个实例对象,应该具有人类的一般能力,所以像daliu可以使用实例方法、类方法和静态方法。总结, 实例对象可以调用实例方法、类方法、静态方法。


daliu.instance_method('刘慈欣')

daliu.class_method('刘慈欣')

daliu.static_method('刘慈欣')

执行实例方法,


<__main__.Human object at 0x1078727f0>刘慈欣

执行类方法,<class'__main__.Human'>刘慈欣

执行静态方法  刘慈欣

类方法和静态方法
人类是类对象,刘慈欣是人类的一个实例对象,人类是不能有刘慈欣这么特殊的方法。我们看下面这个例子


Human.instance_method('刘慈欣')

理解实例方法、类方法、静态方法
类对象 不能调用实例方法,但能调用类方法和静态方法。

理解实例方法、类方法、静态方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章