Python 类
1.一个简单的类
__init__()是一个特殊的方法,每当根据Dog类创建新的实例时,Python都会自动运行它。形参self是必不可少的,且不用手动为它传递实参。self为前缀的变量可以供类中的所有方法使用,我们称之为属性。
【实例】:
class Dog:
def __init__(self):
self.name = 'kkll'
self.age = 3
my_dog = Dog()
print(my_dog.name,my_dog.age)
【运行结果】:
kkll 3
我们接下来手动为类中的属性传递值。
【实例】:
class Dog:
def __init__(self,name,age):
self.name = name
self.age = age
my_dog = Dog('wawa',5)
print(my_dog.name,my_dog.age)
【运行结果】:
wawa 5
2.类的方法
【实例】:
class Dog:
def __init__(self,name,age):
self.name = name
self.age = age
def bark(self):
print(f"{self.name} bark !")
my_dog = Dog('wawa',5)
my_dog.bark()
【运行结果】:
wawa bark !
3.继承
一个类继承另一个类时,将自动获得另一个类的所有属性和方法。原有的类称为父类,而新类称为子类。子类继承了父类的所有属性和方法,同时还可以定义自己的属性和方法。在创建子类时,父类必须包含在当前文件中,且位于子类前面。
Dog类中的super().__init__()是调用父类的初始化函数。(构造方法?)
【实例】:
class Animal:
def __init__(self,name,age):
self.name = name
self.age = age
def eat(self):
print(f"{self.name} can eat.")
class Dog(Animal):
def __init__(self,name,age):
super().__init__(name,age)
my_dog = Dog('wawa',5)
my_dog.eat()
【运行结果】:
wawa can eat.
4.给子类添加属性和方法
为Dog子类添加kind_dog属性和bark方法。
【实例】:
class Dog(Animal):
def __init__(self,name,age,kind):
super().__init__(name,age)
self.kind_dog = kind
def bark(self):
print(f"{self.name} can bark!")
5.重写方法
重写Animal父类中的eat()方法。
【实例】:
class Animal:
def __init__(self,name,age):
self.name = name
self.age = age
def eat(self):
print(f"{self.name} can eat.")
class Dog(Animal):
def __init__(self,name,age,kind):
super().__init__(name,age)
def eat(self):
print(f"{self.name} can eat quickly!")
my_dog = Dog('wawa',5,'泰迪')
my_dog.eat()
【运行结果】:
wawa can eat quickly!
o(* ̄▽ ̄*)ブ 感谢观看,希望对你有帮助!