python中self与__init__怎么解释能让初学者弄懂?

91 篇文章 4 订阅

每当我们在Python中进行面向对象的编程时,我们大多会遇到__init__方法,而我们通常并不完全理解。

今天,程序员在他们的职业生涯中必然会遇到面向对象编程(OOP)。作为一种现代流行的编程语言,Python提供了实现面向对象理念的所有手段。__init__方法是面向对象编程的核心,是创建对象的基本部分之一。

什么是面向对象?

在研究__init__之前,我们先了解一下什么是面向对象(Object-Oriented Programming,OOP),那将会对理解__init__非常有帮助。

面向对象的编程(OOP)是一种依赖于类和对象概念的编程范式。它用于将软件程序结构化为简单的、可重复使用的代码蓝图片断(通常称为类),用于创建对象的单个实例。

一个对象是复杂的变量和函数的集合,可以用来表示真实的实体,如一个按钮、一架飞机或一个人。

为了在 Python 中声明、初始化和操作对象,我们使用类,它们是创建对象的模板。

什么是__init__方法?

__init__方法是Python类中的一个无法绕开的方法。它相当于面向对象方法中的 C++ 构造函数。

当你创建一个类的新对象时,Python 会自动将你的参数传递给 __init__方法并调用它来初始化对象的属性。

__init__方法让类初始化对象的属性,没有其他作用,它只在类中使用。

__init__用法示例

接下来,看一下如何使用__init__方法。

首先,我们创建一个Book类,用一个简单的__init__方法来初始化Book的信息,用一个函数来打印Book信息。

class Book:
    def __init__(self, title, author, language):
        # Initialize book informations
        self.title = title
        self.author = author
        self.language = language
    def print_book_info(self):
        print(f'Title: {self.title}')
        print(f'Author: {self.author}')
        print(f'Language: {self.language}')

现在,我们将创建一个类的对象。

book1 = Book(title='Harry Potter and the Sorcerer Stone', author='JK. Rowling', language='English')

当你创建上面的对象时,__init__方法被调用并初始化了Book信息。

为了证明这一点,让我们打印一下Book信息。

book1.print_book_info()

下面,看一下输出结果:

Title: Harry Potter and the Sorcerer Stone
Author: JK. Rowling
Language: English

从输出结果可以看出,我们初始化Book对象时传进去的参数,就被初始化赋值给对应的变量。


hello,大家好,我是 Jackpop,硕士毕业于哈尔滨工业大学,曾在华为、阿里等大厂工作,如果你对升学、就业、技术提升等有疑惑,不妨交个朋友:

我是Jackpop,我们交个朋友吧!

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值