您的“關注”和“點贊”,是信任,是認可,是支持,是動力…
如意見相佐,可留言。
本人必將竭盡全力試圖做到準確和全面,終其一生進行修改補充更新。
文章目錄
1 Python 構造方法概述
Python 中的 __init__()
方法,是一個特殊的類實例方法,稱爲構造方法、構造函數或構造器,英文爲 Constructor。
僅包含 self 參數的 __init__(self)
構造方法,又稱爲類的默認構造方法。
構造方法最大的用處就是在創建對象時執行初始化,當創建一個對象時,系統會爲這個對象的實例進行默認的初始化。
在 Python 類中,如果不手動爲類添加任何構造方法,Python 會自動爲類添加一個僅包含 self 參數的構造方法。
當然,也可以手動爲類添加構造方法。
手動添加構造方法的語法格式如下所示:
def __init__(self,...):
代碼塊
對以上格式說明,
__init__
:是方法名。- 形式參數:可以包含多個參數,但是,至少要有一個 self 參數且爲第一個參數。
舉例如下所示:
# 定義類
class Demo:
# 手動爲類添加構造方法
def __init__(self):
print('構造方法被執行了。')
# 定義類屬性
name = '碼農阿杰'
# 定義 info() 方法
def info(self,):
print('info() 方法被執行了。')
2 Python 構造方法的調用
每當創建一個類的實例對象時,Python 解釋器都會自動隱式調用構造方法。
舉例如下所示:
例一,
# 定義類
class Demo:
# 手動爲類添加構造方法
def __init__(self):
print('構造方法被執行了。')
# 定義類屬性
name = '碼農阿杰'
# 定義 info() 方法
def info(self,):
print('info() 方法被執行了。')
demo = Demo() # 創建 Demo 類的對象,將會隱式調用構造方法
運行結果:
構造方法被執行了。
例二,
# 定義類
class Demo:
# 手動爲類添加構造方法
def __init__(self, age, gender):
print('構造方法被執行了。', age, gender)
# 定義類屬性
name = '碼農阿杰'
# 定義 info() 方法
def info(self,):
print('info() 方法被執行了。')
demo = Demo(18, '男') # 創建 Demo 類的對象,將會隱式調用構造方法並傳入參數值
運行結果:
構造方法被執行了。 18 男
從例二中可以看出,構造方法中有三個參數 self、age、gender,其中 self 參數(請參見博文《Python self 參數詳解》)不需要手動傳入參數值,在調用時實際傳參的僅有 age、gender。