1.self用法
无论是构造方法还是实例方法,最少要包含一个参数,我们通常默认第一个参数实例化对象的名称叫做self,在调用方法时,self就等于你输入的值或者是实际调用该方法的对象。
也就是说如果把类比作造房子的图纸,那么类实例化后的对象是真正可以住的房子。根据一张图纸(类),我们可以设计出成千上万的房子(类对象),每个房子长相都是类似的(都有相同的类变量和类方法),但它们都有各自的主人,通过 self 参数来对他们进行区分,它就相当于每个房子的门钥匙,可以保证每个房子的主人仅能进入自己的房子(每个类对象只能调用自己的类变量和类方法)。
2.__init__用法
python中的_ _init_ _()叫做对象的初始化方法,在创建一个对象后会自动被调用,_ _init_ _()方法的作用是用来添加对象的属性、传递参数等。__init__() 方法可以有参数,参数通过 __init__() 传递到类的实例化操作上。
3.内部函数调用
(1)在class内,方法之间调用
class dog():
def __init__(self,age):
dog.age = age
def show_color(self):
print('狗的颜色是白色')
def show_age(self):
self.show_color()
print('狗两岁了')
a = dog(2)
a.show_age()
类方法中调用类属性,需要使用self.属命名的方式
2.类外,def之间
def show_a(a):
print(a)
def show_b(a):
if a>6:
show_a(a)
show_b(8)
只需要函数名就可以互相调用
3.类外函数,调用类里
创建该类的实例对象,再通过实例调用方法,最后运行函数即可
4.不同类之间彼此调用
class dog():
def __init__(self, age1):
self.age1 = age1
def show_age(self):
print("狗的年龄是" + str(self.age1))
class bird():
def __init__(self, age2):
self.age2 = age2
def show_dog_age(self):
Ragdoll = dog(3)
Ragdoll.show_age()
Husky = bird(2)
Husky.show_dog_age()
需要将对象作为参数放入类里面