<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## 類定義 ``` class ClassName: <statement-1> . . . <statement-N> ``` * 創建一個類之后,可以通過類名訪問其屬性 ## 類對象 類對象支持兩種操作:屬性引用和實例化。 屬性引用使用和 Python 中所有的屬性引用一樣的標準語法:**obj.name**。 類對象創建后,類命名空間中所有的命名都是有效屬性名。所以如果類定義是這樣: ``` class MyClass: """一個簡單的類實例""" i = 12345 def f(self): return 'hello world' # 實例化類 x = MyClass() # 訪問類的屬性和方法 print("MyClass 類的屬性 i 為:", x.i) > print("MyClass 類的方法 f 輸出為:", x.f()) ``` 類有一個名為 __init__() 的特殊方法(構造方法),該方法在類實例化時會自動調用 ``` def __init__(self): self.data = [] ``` 類定義了 __init__() 方法,類的實例化操作會自動調用 __init__() 方法。如下實例化類 MyClass,對應的 __init__() 方法就會被調用 * __init__() 方法可以有參數,參數通過 __init__() 傳遞到類的實例化操作上 * self代表類的實例,而非類 * 類的方法與普通的函數只有一個特別的區別——它們必須有一個額外的第一個參數名稱, 按照慣例它的名稱是 self。 ## 類的方法 * 在類的內部,使用 def 關鍵字來定義一個方法,與一般函數定義不同,類方法必須包含參數 self, 且為第一個參數,self 代表的是類的實例。 * ## 類的繼承 ``` class DerivedClassName(BaseClassName): <statement-1> . . . <statement-N> ``` 子類(派生類 DerivedClassName)會繼承父類(基類 BaseClassName)的屬性和方法。 BaseClassName(實例中的基類名)必須與派生類定義在一個作用域內。除了類,還可以用表達式,基類定義在另一個模塊中時這一點非常有用 ## 多繼承 ``` class DerivedClassName(Base1, Base2, Base3): <statement-1> . . . <statement-N> ``` 注意圓括號中父類的順序,若是父類中有相同的方法名,而在子類使用時未指定,python從左至右搜索 即方法在子類中未找到時,從左到右查找父類中是否包含方法。 ## 方法重寫 如果你的父類方法的功能不能滿足你的需求,你可以在子類重寫你父類的方法 ``` class Parent: # 定義父類 def myMethod(self): print ('調用父類方法') class Child(Parent): # 定義子類 def myMethod(self): print ('調用子類方法') c = Child() # 子類實例 c.myMethod() # 子類調用重寫方法 super(Child,c).myMethod() #用子類對象調用父類已被覆蓋的方法 ``` super() 函數是用于調用父類(超類)的一個方法。 ## 類屬性和方法 * __private_attrs:兩個下劃線開頭,聲明該屬性為私有,不能在類的外部被使用或直接訪問。在類內部的方法中使用時 self.__private_attrs。 * __private_method:兩個下劃線開頭,聲明該方法為私有方法,只能在類的內部調用 ,不能在類的外部調用。self.__private_methods。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看