今天是Python学习的第二十二天,这三天的学习重点会是Python中的类别与物件导向编程(OOP)基础,今天学习类别属性与实例属性之间的区别,学会定义并使用类别中的方法,包括普通方法和特殊方法。
例一:类别属性与实例属性类别属性 (Class Attribute) 是所有物件共享的变数,可以通过类别名或物件来访问,属于所有实例共享。实例属性 (Instance Attribute) 是每个物件各自拥有的属性,通过物件名来访问。
class Dog:species = "Canine" # 类别属性
def __init__(self, name, age):
self.name = name # 实例属性
self.age = age
my_dog = Dog("Buddy", 3)your_dog = Dog("Max", 5)
print(my_dog.species) # 输出: Canineprint(your_dog.species) # 输出: Canineprint(my_dog.name) # 输出: Buddyprint(your_dog.name) # 输出: Max
例二:定义方法与访问属性在类别中定义方法来处理物件的行为。这里介绍如何通过 self 访问属性,以及定义方法来让物件执行动作。description 是类别中的方法,它访问物件的 name 和 age 属性,并返回一个格式化的字串。
class Dog:def init(self, name, age):self.name = nameself.age = age
def description(self):
return f"{self.name} is {self.age} years old."
my_dog = Dog("Buddy", 3)print(my_dog.description()) # 输出: Buddy is 3 years old.