<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] 類屬性就是類對象所擁有的屬性,它被所有類對象的實例對象所共有, **在內存中只存在一個副本**, 這個和C++中類的靜態成員變量有點類似。對于公有的類屬性,在類外可以通過類對象和實例對象訪問 # 類屬性 ~~~ class People(object): name = 'Tom' #公有的類屬性 __age = 12 #私有的類屬性 p = People() print(p.name) #正確 print(People.name) #正確 print(p.__age) #錯誤,不能在類外通過實例對象訪問私有的類屬性 print(People.__age) #錯誤,不能在類外通過類對象訪問私有的類屬性 ~~~ 總結 * Python中沒有像C++中public和private這些關鍵字來區別公有屬性和私有屬性 * 它是以屬性命名方式來區分,如果在屬性名前面加了2個下劃線`'__'`,則表明該屬性是私有屬性,否則為公有屬性(方法也是一樣,方法名前面加了2個下劃線的話表示該方法是私有的,否則為公有的) 因此,要訪問類屬性有兩種方式 **注意** 如果使用`對象.類屬性=值`賦值語句,只會給**對象添加一個屬性**,而**不會影響到類屬性的值** # 實例屬性(對象屬性) ~~~ class People(object): contry = 'china' p=People() p.contry='japan' print(People.contry) print(p.contry) del p.contry print('-'*30) print(People.contry) print(p.contry) ~~~ 輸出 ~~~ china japan ------------------------------ china china ~~~ 如果需要在類外修改類屬性,必須通過類對象去引用然后進行修改。 如果通過實例對象去引用,會產生一個同名的實例屬性, 這種方式修改的是實例屬性,不會影響到類屬性, 并且之后如果通過實例對象去引用該名稱的屬性, 實例屬性會強制屏蔽掉類屬性,即引用的是實例屬性,除非刪除了該實例屬性。 # `__class__` 對象的類屬性指向類對象 ~~~ class T(object): num= 0 def __init__(self, age): self.age = age self.num = 1 t = T(11) print(t.__class__.num) ~~~ 輸出 ~~~ 0 ~~~ # 名字重整 私有屬性我們獲取不到,這是為什么呢? 因為py把他名字重整了 ~~~ class Test(object): def __init__(self, name): self.__name = name a = Test('laowang') # 不能用 a.__name,因為他把名字改了 # 查看 print(a.__dict__) # 獲取 print(a._Test__name) # 測試下 a._Test__name = 11 # 查看 print(a.__dict__) # 獲取 print(a._Test__name) ~~~ 輸出 ~~~ {'_Test__name': 'laowang'} laowang {'_Test__name': 11} 11 ~~~
                  <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>

                              哎呀哎呀视频在线观看