init方法
init 方法是類中的一個特殊的對象方法,專門用來對象創(chuàng)建對象進行初始化
類中__開頭并且__結(jié)尾的方法叫魔法方法,不需要主動調(diào)用,系統(tǒng)會自動調(diào)用,兩個下劃線開頭__兩個下劃線結(jié)尾__的都叫魔法方法
構(gòu)造方法
-
a. 什么是構(gòu)造方法
函數(shù)名和類名一樣的函數(shù)就是構(gòu)造方法,專門用來創(chuàng)建對象
python中聲明類的時候系統(tǒng)會自動創(chuàng)建這個類對應(yīng)的構(gòu)造方法。
-
構(gòu)造方法的執(zhí)行過程(系統(tǒng)默認進行)
當(dāng)我們構(gòu)造方法的時候內(nèi)部先在內(nèi)存中開辟空間保持對象,然后用創(chuàng)建的這個對象去調(diào)用__init__方法, 用來初始化對象屬性
__init__方法調(diào)用結(jié)束后,返回對象
def Person():
對象 = 創(chuàng)建對象
對象.init()
return 對象
注意: 如果類的init方法除了self以外還有其他參數(shù),那么我們在創(chuàng)建對象的時候構(gòu)造方法來給init方法傳參
"""
# 模擬構(gòu)造方法
def my_init(a, b): #
""" 函數(shù)說明文檔: """
print(a, b)
print('my_init')
return
def my_Dog(*args, **kwargs): #
""" 函數(shù)說明文檔: """
my_init(*args, **kwargs)
return
my_Dog(a =10, b = 20)
class Ql_Dog: #
"""
類說明文檔:
"""
def __init__(self, a, b):
"""
函數(shù)說明文檔:
"""
self.A = a
self.B = b
def ql_Dog_Small(self, c): #
"""
函數(shù)說明文檔:
"""
self.C = c
return
dog1 = Ql_Dog(2, 3)
dog1.ql_Dog_Small(6)
print(dog1.C, dog1.A, dog1.B)