📅  最后修改于: 2023-12-03 15:27:27.554000             🧑  作者: Mango
Python中的类是一种用于创建对象的蓝图或模板。类定义了对象的属性和方法,可以被视为创建对象的说明书。Python中的一切都是对象,因此类是非常重要的。
定义一个类时,使用关键字class
,后面跟类的名称。类名称通常遵循大驼峰命名规则(每个单词的首字母都大写)。在类定义内部,我们可以定义类的属性和方法。
class ClassName:
"""类的文档字符串"""
attribute = "属性"
def method(self):
"""方法的文档字符串"""
pass
类的属性是类的数据成员,通常是一个储存器。Python中的属性与其他面向对象语言中的属性不同,它们是公共变量。属性只需在类定义内部定义即可。
class Car:
max_speed = 200
color = "red"
这里的max_speed
和color
都是类的属性。
在Python中,方法是一组相关函数的集合,它们共享相同的命名空间,并且都是类的成员。方法是在类定义内部定义的,并且它们经常访问类的属性。
class Car:
def start(self):
print("启动")
在这个例子中,start
是一个方法,它打印“启动”文本。
对象是类的实例。在程序执行时,我们可以创建一个对象,并使用该对象调用类的方法和属性。
class Car:
def start(self):
print("启动")
car = Car()
car.start()
这里我们创建了一个Car
对象并将其存储在car
变量中。我们然后使用car
变量来调用start
方法。
Python中的继承是一种创建新类的方式。新类可以继承现有类的属性和方法,并可以添加自己的属性和方法。要创建一个子类,需要在类定义中指定父类。
class ElectricCar(Car):
battery_capacity = 5000
def recharge(self):
print("充电")
在这个例子中,ElectricCar
继承了Car
类的所有属性和方法,可以添加自己的battery_capacity
属性和recharge
方法。
在Python中,类可以在全局和局部范围内定义。在全局范围内定义的类可以在任何地方使用。在局部范围内定义的类只能在该范围内使用。
class GlobalClass:
"""全局范围内的类"""
pass
def func():
class LocalClass:
"""局部范围内的类"""
pass
在这个例子中,GlobalClass
是在全局范围内定义的类,可以在任何地方使用。LocalClass
是在函数func
内部定义的,只能在该函数内部使用。
Python模块是一组相关的函数、类和变量的集合,它们可以被导入到其他Python脚本中以供使用。模块通常是一个Python文件,文件名就是模块名。
# module.py
def add(a, b):
return a + b
class Employee:
def __init__(self, name, salary):
self.name = name
self.salary = salary
在这个例子中,module.py
文件定义了一个add
函数和一个Employee
类。我们可以将该模块导入到其他Python脚本中以供使用。
# main.py
import module
result = module.add(1, 2)
john = module.Employee("John Doe", 50000)
在这个例子中,我们从module
模块中导入了add
函数和Employee
类。我们创建了一个名为john
的新Employee
对象,并使用起始工资为50000的salary
属性初始化它。