【Python】学习笔记九:面向对象拓展

调用类的其他信息

在定义方法的时候,必须有self这一参数。这个参数表示某个对象,对象拥有类的所有性质。那么我们可以通过self,调用类属性

class people(object):
    action = 'nod'
    def show_action(self):
        print(self.action)
    def nod_100th(self):
        for i in range(10):
            self.show_action()

oliver = people()
oliver.nod_100th()

这里有一个类属性nod(点头),在方法show_action中,通过self.action,调用了该属性的值。


还可以以相同的方式调用其他方法,方法nod_100th()中调用了方法show_action()

__init__方法

__init__()是一个特殊方法(special method)

如果在类中定义__init__()这个方法,创建对象时,Python会自动调用这个方法,这个过程叫初始化

class people(object):
    sex = 'man'
    def __init__(self):
        print(self.sex)

oliver = people()

屏幕打印结果:

man

此处我们只是创建了对象,但是__init__()方法被调用了

对象的性质

一个类有许多个属性,例如:人这个类,性别就是其中最明显的一个属性,性别分为:男,女

性质的值也是随着对象的不同而不同的

class people(object):
    def __init__(self,var_age):
       self.age=var_age
    def printage(self):
        self.age

oliver = people(100) #在此处,100作为参数传递给__init__()方法的var_age变量
print(oliver.age)
oliver.printage()
对象的性质也可以被其它方法调用,调用方法与类属性的调用相似,正如在printage()方法中的调用。
原文地址:https://www.cnblogs.com/OliverQin/p/7681882.html