# 2.类与对象的基础
在 Python 中,类是创建对象的蓝图,它定义了对象的属性和方法。对象则是根据类创建的具体实例。下面是一个简单的类定义示例:
class Car:
def __init__(self, brand, model):
self.brand = brand
self.model = model
1
2
3
4
2
3
4
在这个例子中,Car是一个类,它有两个属性:brand(品牌)和model(型号)。__init__是一个特殊的方法,称为构造函数,用于初始化对象的状态。
# 3.方法的定义
在类中,除了__init__方法外,我们还可以定义其他方法来描述对象的行为。这些方法通常以self作为第一个参数,self代表了当前对象的实例。以下是在Car类中定义一个方法的示例:
class Car:
def __init__(self, brand, model):
self.brand = brand
self.model = model
def start_engine(self):
print(f"The {self.model} by {self.brand} has started.")
1
2
3
4
5
6
7
2
3
4
5
6
7
在这个例子中,start_engine是一个方法,它定义了汽车启动引擎的行为。self参数允许该方法访问和修改对象的属性。
# 4.方法的调用
定义了类和方法之后,我们可以创建对象并调用其方法。以下是如何创建Car对象并调用start_engine方法的示例:
my_car = Car("Tesla", "Model S")
my_car.start_engine()
1
2
2
在这个例子中,我们首先创建了一个Car对象my_car,然后调用了它的start_engine方法。输出将是:"The Model S by Tesla has started."
# 5.类方法与静态方法
除了实例方法(通过self调用的方法),Python 还支持类方法和静态方法:
- 类方法:使用
@classmethod装饰器定义,它们的第一个参数是类本身,通常用cls表示。 - 静态方法:使用
@staticmethod装饰器定义,它们不需要类或实例的引用。
以下是类方法和静态方法的示例:
class Car:
def __init__(self, brand, model):
self.brand = brand
self.model = model
@classmethod
def get_class_info(cls):
print(f"Class: {cls.__name__}")
@staticmethod
def check_speed(speed):
print(f"Speed: {speed} km/h")
# 创建Car对象
my_car = Car("Toyota", "Corolla")
# 调用类方法
Car.get_class_info()
# 调用静态方法
Car.check_speed(120)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
← 04-Python进阶 06-信号处理 →