Python 魔术方法

日常记录
原文地址:介绍Python的魔术方法 - Magic Method


init我们很熟悉了,它在对象初始化的时候调用,我们一般将它理解为"构造函数".

实际上, 当我们调用x = SomeClass()的时候调用,init并不是第一个执行的, new才是。所以准确来说,是newinit共同构成了"构造函数".

new是用来创建类并返回这个类的实例, 而init只是将传入的参数来初始化该实例.

new在创建一个实例的过程中必定会被调用,但init就不一定,比如通过pickle.load的方式反序列化一个实例时就不会调用init

new方法总是需要返回该类的一个实例,而init不能返回除了None的任何值。

阅读全文...

Tags: 记录