📜  python 类 - Python (1)

📅  最后修改于: 2023-12-03 14:46:17.549000             🧑  作者: Mango

Python 类 - Python

在 Python 中,类是一种自定义数据类型,它是由多个属性和方法组成的。类定义了一种对象的行为和状态,并且在需要时可以通过创建相应的对象来使用。

定义一个类

定义一个类需要使用关键字 class,后面可以跟着类名,类名通常采用 Pascal 命名规则。

class MyClass:
    pass

这个类的定义非常简单,只有一个 pass 语句,这是因为类定义中至少需要一条语句。如果什么都不定义,会有一个语法错误 IndentationError: expected an indented block

创建一个对象

在定义了一个类之后,我们可以通过创建类的对象来使用这个类。

class MyClass:
    pass

my_object = MyClass()

这里我们创建了一个 MyClass 类的实例 my_object

类的构造函数

类的构造函数是一种特殊的方法,在创建类的实例时会自动调用。它通常用于初始化类的属性。

class MyClass:
    def __init__(self, name):
        self.name = name

my_object = MyClass("John")
print(my_object.name) # 输出 "John"

这里我们定义了一个构造函数 __init__(self, name),它接受一个参数 name 并初始化了一个名为 name 的属性。注意,所有类的方法第一个参数都是 self,表示类的实例。

类的方法

类的方法是类所具有的行为,可以通过类的实例来调用。

class MyClass:
    def greeting(self, name):
        print("Hello, {}!".format(name))

my_object = MyClass()
my_object.greeting("John") # 输出 "Hello, John!"

这里我们定义了一个 greeting 方法,它接受一个参数 name 并打印一条问候语。

继承

继承是面向对象编程中的一个重要概念。它允许新的类从已有的类中派生出来,使用已有类的属性和方法,并可以在此基础上添加新的属性和方法。

class MyBaseClass:
    def greeting(self, name):
        print("Hello, {}!".format(name))

class MySubClass(MyBaseClass):
    def say_goodbye(self, name):
        print("Goodbye, {}!".format(name))

my_object = MySubClass()
my_object.greeting("John")     # 输出 "Hello, John!"
my_object.say_goodbye("John")  # 输出 "Goodbye, John!"

这里我们定义了一个基类 MyBaseClass,它有一个 greeting 方法。同时,我们定义了一个子类 MySubClass,它继承了基类 MyBaseClass 的方法,并且添加了一个 say_goodbye 方法。

总结

这里只是 Python 类的一个简单介绍。了解类的使用非常重要,因为它是 Python 面向对象编程的基础。如果想深入了解 Python 面向对象编程的更多内容,可以参考 Python 官方文档