Python编程实战—面向对象与进阶语法 | 属性与方法
一、引言:类的核心——属性与方法
在面向对象编程(OOP)中,类(Class) 是一个“蓝图”,而属性(Attribute) 和方法(Method) 是这张蓝图的组成部分。
- • 属性代表对象的“特征”——是什么;
- • 方法代表对象的“行为”——能做什么。
例如,一辆汽车有颜色、品牌、速度(属性),能启动、加速、刹车(方法)。
属性和方法共同定义了对象的状态与功能。
二、属性(Attribute)
1. 属性的分类
在 Python 中,属性分为两类:
| 类型 | 定义位置 | 说明 |
| 实例属性 | 在 __init__() 中定义 | 属于对象自身,每个对象独立 |
| 类属性 | 在类体中定义 | 属于整个类,所有对象共享 |
2. 实例属性示例
实例属性一般在构造函数 __init__ 中定义:
class Car:
def __init__(self, brand, color):
self.brand = brand
self.color = colormy_car = Car("Tesla", "红色")
print(my_car.brand) # Tesla
print(my_car.color) # 红色
每个对象都有自己的属性值,互不影响。
car1 = Car("BYD", "蓝色")
car2 = Car("BMW", "黑色")print(car1.brand) # BYD
print(car2.brand) # BMW
3. 类属性示例
类属性通常定义在类体中,所有对象共享。
class Dog:
species = "犬科动物" # 类属性 def __init__(self, name):
self.name = name # 实例属性dog1 = Dog("旺财")
dog2 = Dog("小黑")print(dog1.species, dog2.species) # 犬科动物 