一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - python中__init__()方法詳情

python中__init__()方法詳情

2022-03-09 00:16代號零零一 Python

這篇文章主要介紹了 python中__init__()方法詳情,python類中定義的函數(shù)稱為方法, init ()方法本質(zhì)也是一個函數(shù)。這個函數(shù)的作用是初始化實例后的對象,具體內(nèi)容請參考下文詳細內(nèi)容

initial;">python類中定義的函數(shù)稱為方法 init ()方法本質(zhì)也是一個函數(shù)。這個函數(shù)的作用是初始化實例后的對象。

具體如下例:

init()方法的作用是初始化實例后的對象cqueue

class CQueue:

類中的函數(shù)稱為方法 ,這里的__init__()方法在類實例化是被自動調(diào)用。若類定義了__init__()方法,類的實例化操作會自動調(diào)用__init__方法。

__init__方法可以有參數(shù),參數(shù)通過__init__()傳遞到類的實例化操作上。self代表的是類的實例,而非類。

類的方法和普通函數(shù)的區(qū)別只有一個,類的方法必須有一個額外的第一個參數(shù)名稱,按照慣例它的名稱是self

class CQueue

    def __init__(self):

        self.A,self.B=[],[]

  

    def appendTail(self,value:int)->None:

        self.A.append(value)



    def deleteHead(self)->int:

        if self.B:

            return self.B.pop()

        if not self.A:

            return -1

        while self.A:

            self.B.append(self.A.pop())

        print(self.B)

        return self.B.pop()



if __name__=="__main__":

    #類CQueue的實例化,這里的括號()不能丟。

    #__init__()方法的作用是初始化實例后的對象cqueue。

    cqueue=CQueue()

    #調(diào)用類中的appendTail()函數(shù),增加元素。

    cqueue.appendTail(243)

    cqueue.appendTail(2)

    cqueue.appendTail(4)

    cqueue.deleteHead()

    cqueue.deleteHead()

有無__init__的區(qū)別,結論如下:

1.在類實例化時,如果類中有__init__方法,此時調(diào)用__init__方法。

2.若該類沒有父類,也沒有__init__方法,則不會有任何操作。即對象不會被初始化。

3.若該類有父類,則去調(diào)用該類的父類中__init__方法。

具體實驗如下:

定義三個類:CQueuestudentsum,其中CQueuestudentsum的父類。

python中__init__()方法詳情

  • 實驗1說明__init__方法的作用是初始化實例的類。
  • 實驗2說明:當子類沒有__init__方法時,會在父類中進行初始化。
  • 實驗3,4說明sum(student,CQueue ),子類sum沒有__init__方法時,會調(diào)用父類,并且調(diào)用父類中排在前面的父類,這里student類在CQueue前,所以調(diào)用student類中的__init__方法初始化實例的類。
  • 實驗5說明:在類及其父類均沒有初始化時,實例化的類不會被初始化。

實驗1代碼:

class CQueue:

    #類中的函數(shù)稱為方法 ,這里的__init__()方法在類實例化是被自動調(diào)用。若類定義了__init__()方法,類的實例化操作會自動調(diào)用__init__方法。

    #__init__方法可以有參數(shù),參數(shù)通過__init__()傳遞到類的實例化操作上。self代表的是類的實例,而非類。

    #類的方法和普通函數(shù)的區(qū)別只有一個,類的方法必須有一個額外的第一個參數(shù)名稱,按照慣例它的名稱是self。

    def __init__(self):

        self.A,self.B=[],[]



    def appendTail(self,value:int)->None:

        self.A.append(value)



    def deleteHead(self)->int:

        if self.B:

            return self.B.pop()

        if not self.A:

            return -1

        while self.A:

            self.B.append(self.A.pop())

        print(self.B)

        return self.B.pop()

class student:

        def __init__(self):

            print("測試輸出1")

        def test1(self):

            print("測試輸出2")



class sum(student,CQueue ):

        def __init__(self):

            print("測試輸出3")

        def test2(self):

            print("測試輸出4")

if __name__=="__main__":

    #類CQueue的實例化,這里的括號()不能丟。

    s=sum()

實驗結果:

python中__init__()方法詳情

實驗2代碼:

class CQueue:

    #類中的函數(shù)稱為方法 ,這里的__init__()方法在類實例化是被自動調(diào)用。若類定義了__init__()方法,類的實例化操作會自動調(diào)用__init__方法。

    #__init__方法可以有參數(shù),參數(shù)通過__init__()傳遞到類的實例化操作上。self代表的是類的實例,而非類。

    #類的方法和普通函數(shù)的區(qū)別只有一個,類的方法必須有一個額外的第一個參數(shù)名稱,按照慣例它的名稱是self。

    def __init__(self):

        self.A,self.B=[],[]



    def appendTail(self,value:int)->None:

        self.A.append(value)



    def deleteHead(self)->int:

        if self.B:

            return self.B.pop()

        if not self.A:

            return -1

        while self.A:

            self.B.append(self.A.pop())

        print(self.B)

        return self.B.pop()

class student:

        def __init__(self):

            print("測試輸出1")

        def test1(self):

            print("測試輸出2")



class sum(student,CQueue ):

        # def __init__(self):

        #     print("測試輸出3")

        def test2(self):

            print("測試輸出4")



if __name__=="__main__":

    #類CQueue的實例化,這里的括號()不能丟。

    s=sum()

實驗結果:

python中__init__()方法詳情

實驗3,4,省略。

實驗5:

class CQueue:

    #類中的函數(shù)稱為方法 ,這里的__init__()方法在類實例化是被自動調(diào)用。若類定義了__init__()方法,類的實例化操作會自動調(diào)用__init__方法。

    #__init__方法可以有參數(shù),參數(shù)通過__init__()傳遞到類的實例化操作上。self代表的是類的實例,而非類。

    #類的方法和普通函數(shù)的區(qū)別只有一個,類的方法必須有一個額外的第一個參數(shù)名稱,按照慣例它的名稱是self。

    def __init__(self):

        self.A,self.B=[],[]



    def appendTail(self,value:int)->None:

        self.A.append(value)



    def deleteHead(self)->int:

        if self.B:

            return self.B.pop()

        if not self.A:

            return -1

        while self.A:

            self.B.append(self.A.pop())

        print(self.B)

        return self.B.pop()

class student:

        # def __init__(self):

        #     print("測試輸出1")

        def test1(self):

            print("測試輸出2")



class sum(student,CQueue ):

        # def __init__(self):

        #     print("測試輸出3")

        def test2(self):

            print("測試輸出4")



if __name__=="__main__":

    #類CQueue的實例化,這里的括號()不能丟。

    s=sum()

實驗結果:

python中__init__()方法詳情

從實驗結果可以看出,沒有任何操作。

到此這篇關于 python中__init__()方法詳情的文章就介紹到這了,更多相關 python中__init__()方法內(nèi)容請搜索服務器之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/qq_37993640/article/details/121532933

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 91香蕉视频在线播放 | 国产精品对白刺激久久久 | 久久青草免费91线频观看站街 | 性刺激欧美三级在线现看中文 | 成 人免费va视频 | 亚洲精品一区二区三区在线观看 | 国产在线乱子伦一区二区 | 95在线观看精品视频 | 欧美综合在线 | 免费观看www视频 | 激情影院网站 | 美女主播免费观看 | 欧美日日操 | 含羞草传媒一天免费看下 | 国产伦精品一区二区 | 14一18cad中国大学生 | 日本久久影视 | 四虎精品成人免费影视 | 99ri精品 | 2019理论韩国理论中文 | 草嫩社区 | 亚洲人成网站在线观看90影院 | 国内精品在线播放 | 天天曰天天干 | 国产无限免费观看黄网站 | 亚洲国产精品成人综合久久久 | b站免费网站入口 | 俄罗斯性高清完整版 | 果冻传媒新在线观看免费 | 校草太大了h| 国产小情侣自拍 | 亚洲精品福利一区二区在线观看 | 国产麻豆传媒在线观看 | 秋霞鲁丝影院久久人人综合 | 久久亚洲电影www电影网 | 成人看的羞羞视频免费观看 | 国内精品91东航翘臀女神在线 | 国产成人精品本亚洲 | 国产高清久久 | 亚洲国产精品嫩草影院久久 | 欧美侏儒xxx |