Python - 面向对象编程 - __init__() 构造方法

简介: Python - 面向对象编程 - __init__() 构造方法

什么是构造方法


  • 在创建类时, 可手动添加一个  __init__() 方法,称为构造方法,这是一个实例方法
  • 构造方法用于创建实例对象时使用,每当创建一个类的实例对象时,Python 解释器都会自动调用它
  • 一般用来初始化对象的某些属性

 

构造方法语法格式


class 类:
    def __init__(self, 参数):
        self.属性 = 参数
     ...
对象 = 类(参数)


  • init 的前缀和后缀是两个下划线 _
  • 方法可以包含多个参数,但必须要包含一个 self 参数,且必须为第一个参数,所以至少要包含一个 self 参数
  • 第一个参数 self 指向新创建的对象

 

类的默认构造方法

  • __init__() 构造方法并不是必写
  • 假设不写,Python 也会自动添加一个仅包含 self 参数的 __init__() 构造方法,这又称为类的默认构造方法

 

不带参数的构造方法栗子


# 不带参数
class PoloBlog:
    def __init__(self):
        print("自动调用构造方法")
        # 定义了一个实例属性
        self.name = "小菠萝"
blog = PoloBlog()
print(blog.name)
# 输出结果
自动调用构造方法
小菠萝


显然,在创建 blog 这个对象时,隐式调用了手动创建的 __init__() 构造方法

 

带参数的构造方法栗子


# 带参数
class PoloBlog:
    def __init__(self, name, age):
        print("自动调用构造方法")
        # 初始化实例属性
        self.name = name
        self.age = age
    # 下面定义了一个 say 实例方法
    def say(self):
        print(self.name, self.age)
blog = PoloBlog("姓名", "年龄")
blog.say()
相关文章
|
4月前
|
Java 程序员 C++
Python 面向对象详解!
本文详细介绍了Python中的面向对象编程(OOP),包括类、对象、继承、封装、多态和抽象等核心概念。通过具体示例,解释了如何使用类定义对象的属性和方法,以及如何通过继承实现代码重用。文章还探讨了封装和多态的重要性,并介绍了私有属性和抽象类的使用方法。最后,总结了OOP的四大支柱:封装、抽象、继承和多态,强调了这些概念在Python编程中的应用。适合Java程序员扩展Python编程知识。
104 2
|
2月前
|
关系型数据库 开发者 Python
Python编程中的面向对象设计原则####
在本文中,我们将探讨Python编程中的面向对象设计原则。面向对象编程(OOP)是一种通过使用“对象”和“类”的概念来组织代码的方法。我们将介绍SOLID原则,包括单一职责原则、开放/封闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。这些原则有助于提高代码的可读性、可维护性和可扩展性。 ####
|
4月前
|
Python
Python面向对象(2)
【10月更文挑战第14天】
Python面向对象(2)
|
4月前
|
设计模式 程序员 C语言
Python面向对象
【10月更文挑战第13天】
Python面向对象
|
3月前
|
开发者 Python
Python中__init__.py文件的作用
`__init__.py`文件在Python包管理中扮演着重要角色,通过标识目录为包、初始化包、控制导入行为、支持递归包结构以及定义包的命名空间,`__init__.py`文件为组织和管理Python代码提供了强大支持。理解并正确使用 `__init__.py`文件,可以帮助开发者更好地组织代码,提高代码的可维护性和可读性。
163 2
|
4月前
|
Java C# Python
Python学习七:面向对象编程(中)
这篇文章是关于Python面向对象编程的中级教程,涵盖了析构函数、对象的三大特征(封装、继承、多态)、类属性与实例属性、以及类方法与静态方法的对比。
45 2
|
4月前
|
设计模式 安全 JavaScript
Python学习八:面向对象编程(下):异常、私有等
这篇文章详细介绍了Python面向对象编程中的私有属性、私有方法、异常处理及动态添加属性和方法等关键概念。
41 1
|
4月前
|
Python
深入解析 Python 中的对象创建与初始化:__new__ 与 __init__ 方法
深入解析 Python 中的对象创建与初始化:__new__ 与 __init__ 方法
38 1
|
5月前
|
前端开发 Python
Python编程的面向对象有哪些(二)
Python编程的面向对象(二)—类的多态
36 7
|
5月前
|
IDE Java 开发工具
Python类与面向对象
Python类与面向对象