一、创建类
class Dog():
def _init_(self,name,age):
self.name=name
self.age=age
def sit(self):
print(self.name.title()+"is now sitting.")
def roll_over(self):
print(self.name.title()+"rolled over!")
属性:可以通过实例访问的变量
方法:
二、创建实例
1、创建
my_dog=Dog("w“,6)
my_dog.name #访问属性
my_dog.sit()#调用方法
2、使用类和实例
每个属性都必须要有初始值,我们可以给每个属性设定默认值,这样创建实例的时候就不需要传入形参
3、修改属性的值
- 直接修改
my_dog.name='nil'
- 设定方法修改属性值
def update_odometer(self,mileage):
self.odometer_reading=mileage
- 设定方法对属性值进行递增
def update_odometer(self,mileage):
self.odometer_reading=mileage
三、继承
- 创建一个子类
class Dog():
def _init_(self,name,age):
self.name=name
self.age=age
def sit(self):
print(self.name.title()+"is now sitting.")
def roll_over(self):
print(self.name.title()+"rolled over!")
class My_dog(Dog):
def _init_(self,name,age):
super()._init_(self,name,age)
- 创建子类的时候,父类必须要包含在当前文件中,且位于子类前面
- 定义子类,括号里面制定父类的名称
- super()帮助调用父类的方法和获得属性
2. 给子类定义属性和方法:直接在后面添加即可
3. 重写父类的方法
按照同名函数进行重写即可
4. 将实例用作属性
class Dog():
def _init_(self,name,age):
self.name=name
self.age=age
def sit(self):
print(self.name.title()+"is now sitting.")
def roll_over(self):
print(self.name.title()+"rolled over!")
class Food():#关键
def _init_(self,food_amount=5)
self.food_amount=food_amount
def describe_amount(self):
print(str(food_amount))
class My_dog(Dog):
def _init_(self,name,age):
super()._init_(self,name,age)
self.food=Food()#关键
#调用
my_dog=My_dog('nil',5)
my_dog.food.describe_amount()