📜  Python中的构造函数

📅  最后修改于: 2020-04-07 10:21:06             🧑  作者: Mango

先决条件: Python中的面向对象编程|1Python中的面向对象编程| 2
构造函数通常用于实例化对象。构造函数的任务是在创建类的对象时初始化(分配值)给类的数据成员。在Python中,__init __()方法称为构造函数,并且创建对象时始终调用。
构造函数声明的语法:

def __init __():
    #构造函数的主体

构造函数的类型:

  • 默认构造函数:默认构造函数是简单的构造函数,不接受任何参数,它的定义中只有一个参数是对正在构造的实例的引用。
  • 参数化构造函数:参数的构造函数称为参数化构造函数。参数化构造函数以其第一个参数作为对正在构造的实例的引用,该实例称为self,其余参数由程序员提供。

默认构造函数的示例:

class 芒果for芒果:
    芒果 = ""
    # 默认构造函数 
    def __init__(self):
        self.芒果 = "芒果for芒果"
    # 打印数据成员的方法
    def print_芒果(self):
        print(self.芒果)
# 创建对象
obj = 芒果for芒果()
# 调用对象的方法
obj.print_芒果()

输出:

芒果for芒果

参数化构造函数的示例:

class Addition:
    first = 0
    second = 0
    answer = 0
    # 参数化构造函数
    def __init__(self, f, s):
        self.first = f
        self.second = s
    def display(self):
        print("第一个成员 = " + str(self.first))
        print("第二个成员 = " + str(self.second))
        print("两个数之和 = " + str(self.answer))
    def calculate(self):
        self.answer = self.first + self.second
# 创建类的对象
# 这会调用参数化构造函数
obj = Addition(1000, 2000)
# 实现加法
obj.calculate()
# 展示结果
obj.display()

输出:

第一个成员 = 1000
第二个成员 = 2000
两个数之和 = 3000