📜  python 类 (1)

📅  最后修改于: 2023-12-03 15:04:18.105000             🧑  作者: Mango

Python类

在Python中,类是一种创建对象的机制,它可以包含数据(属性)和函数(方法)。使用类可以更好地组织和管理代码,使其更具可读性和可维护性。下面是Python类的一些基本概念。

创建类

使用class关键字来定义一个类,并给它一个名称。在类的内部,我们可以定义属性和方法。例如:

class Person:
    # 属性
    name = "Tom"
    age = 20
    
    # 方法
    def say_hello(self):
        print("Hello, I'm", self.name)

以上代码定义了一个名为Person的类,该类具有nameage两个属性以及say_hello()方法。属性是类的特征,而方法是它的行为。属性和方法前面必须加一个self参数,表示调用该属性或方法的对象本身。

创建对象

使用类来创建一个对象叫做实例化。我们可以使用类名和括号来创建一个实例。例如:

person1 = Person()

以上代码创建了一个名为person1Person对象。现在我们可以使用它的属性和方法。

访问属性和方法

使用点.运算符来访问对象的属性和方法。例如:

person1.name  # 'Tom'
person1.age   # 20
person1.say_hello()  # 'Hello, I'm Tom'
初始化方法

每当创建一个对象时,都会自动调用一个名为__init__()的方法,可以在里面初始化对象的属性。例如:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
        
    def say_hello(self):
        print("Hello, I'm", self.name)

以上代码在初始化方法中定义了nameage属性,并将其赋值为传入的参数。现在每次创建一个实例时,我们都必须传入一个值。例如:

person2 = Person("Jerry", 25)
person2.say_hello()  # 'Hello, I'm Jerry'
继承和多态

在Python中,我们可以使用继承来创建一个新的类,从而利用原有的代码。通过继承,我们可以继承父类的属性和方法,并可以添加新的属性和方法。例如:

class Student(Person):
    def __init__(self, name, age, grade):
        super().__init__(name, age)
        self.grade = grade
    
    def say_hello(self):
        super().say_hello()
        print("I'm in grade", self.grade)

以上代码定义了一个名为Student的类,它继承了Person类,并增加了grade属性和say_hello()方法。使用super()内置方法可以调用父类的属性和方法。

现在我们可以创建一个新的Student对象,并调用其say_hello()方法:

student1 = Student("Lily", 18, 12)
student1.say_hello()  # 'Hello, I'm Lily\nI'm in grade 12'

以上就是Python类的基本概念,它可以让我们更好地组织和管理代码,并能够使用继承和多态等高级特性。