python类的学习
#创建和使用类
class Dog(): #约定首字母大写表示类名
"""一次模拟小狗的简单例子来学习类"""
def __init__(self,name,age):
self.name = name #每个小狗都有的name属性
self.age = age #每个小狗都有的age属性
def sit(self):
print(self.name.title()+"is now sitting!") #每个小狗都有的sit()能力
def roll_over(self):
print(self.name.title()+"rolled over!") #每个小狗都有的roll_over()方法
#创建实例
my_dog = Dog("white",6)
print("My dog's name is "+my_dog.name.title()+".") #访问属性
print("My dog is "+str(my_dog.age)+" years old") #访问属性
my_dog.sit() #调用方法
my_dog.roll_over() #调用方法
程序片段的解释:
方法__init__() : 一个特殊的方法,每当你根据Dog类创建新实例时,python会自动运行它,这是一种约定,旨在避免python默认方法与普通方法发生命名冲突。
方法包括了三个形参,self,name,age,形参self必不可少,而且必须位于其他形参前面,他是指向实例本身的引用,让实例能够访问类中的属性和方法。
继承
class Hashiqi(Dog): #继承
def __init__(self,name,age,color): #新增属性也可以
super().__init__(name,age)
self.color = color
def show_color(self): #新增方法
print(self.color)
erha = Hashiqi("hake",4,"blue")
erha.sit()
erha.roll_over()
erha.show_color()