国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

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

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類中定義的函數稱為方法, init ()方法本質也是一個函數。這個函數的作用是初始化實例后的對象,具體內容請參考下文詳細內容

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

具體如下例:

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

class CQueue:

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

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

類的方法和普通函數的區別只有一個,類的方法必須有一個額外的第一個參數名稱,按照慣例它的名稱是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()

    #調用類中的appendTail()函數,增加元素。

    cqueue.appendTail(243)

    cqueue.appendTail(2)

    cqueue.appendTail(4)

    cqueue.deleteHead()

    cqueue.deleteHead()

有無__init__的區別,結論如下:

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

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

3.若該類有父類,則去調用該類的父類中__init__方法。

具體實驗如下:

定義三個類:CQueue、student、sum,其中CQueue、studentsum的父類。

python中__init__()方法詳情

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

實驗1代碼:

class CQueue:

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

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

    #類的方法和普通函數的區別只有一個,類的方法必須有一個額外的第一個參數名稱,按照慣例它的名稱是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:

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

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

    #類的方法和普通函數的區別只有一個,類的方法必須有一個額外的第一個參數名稱,按照慣例它的名稱是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:

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

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

    #類的方法和普通函數的區別只有一個,類的方法必須有一個額外的第一個參數名稱,按照慣例它的名稱是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__()方法內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 好吊色欧美一区二区三区四区 | 看a网址 | 中文字幕在线观看一区二区三区 | 日韩午夜一级片 | a级在线免费视频 | 国产精品美女久久久久久久久久久 | 欧美a在线 | 日韩视频三区 | 中文字幕在线精品 | 欧美在线综合 | av黄色网页 | 亚洲乱码国产乱码精品精的特点 | 日韩一区二区三区福利视频 | 久久大陆| 亚洲欧美在线视频 | 日本精品久久 | 午夜小视频在线 | 久久综合一区 | 毛片一区 | 日韩精品影视 | 青青久视频| 在线a视频 | 国产欧美日韩在线观看 | 玖玖爱国产 | 亚洲欧美在线视频 | 伊人激情| 中文字幕在线观看一区 | 夜夜av| 国产美女久久 | 自拍亚洲| 91视频在线| 视色影院| 中文字幕三区 | 午夜免费视频 | 国产大片在线观看 | 日本v在线观看 | 色综久久 | 欧美一级一| 秋霞av电影 | 亚洲高清色综合 | 欧美日韩中文字幕 |