• <strike id="6sogq"><s id="6sogq"></s></strike>
  • <strike id="6sogq"></strike>

    千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

    400-811-9990
    手機站
    千鋒教育

    千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

    千鋒教育

    掃一掃進入千鋒手機站

    領(lǐng)取全套視頻
    千鋒教育

    關(guān)注千鋒學(xué)習(xí)站小程序
    隨時隨地免費學(xué)習(xí)課程

    上海
    • 北京
    • 鄭州
    • 武漢
    • 成都
    • 西安
    • 沈陽
    • 廣州
    • 南京
    • 深圳
    • 大連
    • 青島
    • 杭州
    • 重慶
    當(dāng)前位置:成都千鋒IT培訓(xùn)  >  技術(shù)干貨  >  python構(gòu)造函數(shù)有什么用

    python構(gòu)造函數(shù)有什么用

    來源:千鋒教育
    發(fā)布人:xqq
    時間: 2023-11-10 03:15:09

    在創(chuàng)建類時,我們可以手動添加一個__init__()方法,該方法是一個特殊的類實例方法,稱為構(gòu)造方法(或構(gòu)造函數(shù))。

    構(gòu)造方法用于創(chuàng)建對象時使用,每當(dāng)創(chuàng)建一個類的實例對象時,Python解釋器都會自動調(diào)用它。Python類中,手動添加構(gòu)造方法的語法格式如下:

    def__init__(self,...):

    代碼塊

    注意,此方法的方法名中,開頭和結(jié)尾各有2個下劃線,且中間不能有空格。Python中很多這種以雙下劃線開頭、雙下劃線結(jié)尾的方法,都具有特殊的意義,教程后面還會詳細(xì)介紹這些特殊的方法。

    另外,__init__()方法可以包含多個參數(shù),但必須包含一個名為self的參數(shù),且必須作為第一個參數(shù)。也就是說,類的構(gòu)造方法最少也要有一個self參數(shù)。

    例如,仍以Person類為例,添加構(gòu)造方法的代碼如下所示:

    classPerson:

    '''這是一個學(xué)習(xí)Python定義的一個Person類'''

    def__init__(self):

    print("調(diào)用構(gòu)造方法")

    在以上代碼的基礎(chǔ)上,添加如下代碼:

    zhangsan=Person()

    這行代碼的含義是創(chuàng)建一個名為zhangsan的Person類對象。運行代碼可看到如下結(jié)果:

    調(diào)用構(gòu)造方法

    顯然,在創(chuàng)建zhangsan這個對象時,隱式調(diào)用了類的構(gòu)造方法。

    不僅如此,在__init__()構(gòu)造方法中,除了self參數(shù)外,還可以自定義一些參數(shù),參數(shù)之間使用逗號“,”進行分割。例如,下面的代碼在創(chuàng)建__init__()方法時,額外指定了2參數(shù),分別是name和age:

    classPerson:

    '''這是一個學(xué)習(xí)Python定義的一個Person類'''

    def__init__(self,name,age):

    print("這個人的名字是:",name,"年齡為:",age)

    #創(chuàng)建zhangsan對象,并傳遞參數(shù)給構(gòu)造函數(shù)

    zhangsan=Person("張三",20)

    可以看到,雖然構(gòu)造方法中有self、name、age3個參數(shù),但實際需要傳參的僅有name和age,也就是說,self不需要手動傳遞參數(shù)。

    以上內(nèi)容為大家介紹了Python培訓(xùn)之構(gòu)造函數(shù)有什么用,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機構(gòu):千鋒教育。

    聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

    猜你喜歡LIKE

    python delattr函數(shù)如何使用?

    2023-11-10

    python time.strptime的格式化

    2023-11-10

    pythonGIL在Python多線程的應(yīng)用

    2023-11-10

    最新文章NEW

    python中pdb模塊怎么用?

    2023-11-10

    Python如何截圖保存?

    2023-11-10

    python?中缺少module怎么辦?

    2023-11-10

    相關(guān)推薦HOT

    更多>>

    快速通道 更多>>

    最新開班信息 更多>>

    網(wǎng)友熱搜 更多>>