国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

譯-Python中的類屬性與實例屬性的區別

objc94 / 711人閱讀

摘要:以下的區別有意義么如果你需要創建很多實例,這兩種風格在表現和空間要求上有什么區別么當你閱讀代碼的時候,你是否會考慮這兩種風格的重要區別除了表現上的考慮,這邊有一個重要的語義上的不同。用實例屬性設置的實例中,實例有可能被多個對象引用。

以下的區別有意義么?

class?A(object):
? ? foo?=?5? ?#?some?default?value

Vs

class?B(object):? ? def?__init__(self,?foo=5):
? ? ? ? ?????self.foo?=?foo

如果你需要創建很多實例,這兩種風格在表現和空間要求上有什么區別么?當你閱讀代碼的時候,你是否會考慮這兩種風格的重要區別?

除了表現上的考慮,這邊有一個重要的語義上的不同。在類屬性的那個例子中,只有一個對象被引用。用實例屬性設置的實例中,實例有可能被多個對象引用。比如說:

>>>?class?A:?foo?=[ ]
>>>?a,?b?=?A(),?A()
>>>?a.foo.append(5)
>>>?b.foo
[5]
>>>?class?A:
...? def?__init__(self):?self.foo?=?[ ]
>>>?a,?b?=?A(),?A()
>>>?a.foo.append(5)
>>>?b.foo? ?
[]

來源:Python: Difference between class and instance attributes

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/38199.html

相關文章

  • []Python屬性實例屬性區別

    摘要:以下的區別有意義么如果你需要創建很多實例,這兩種風格在表現和空間要求上有什么區別么當你閱讀代碼的時候,你是否會考慮這兩種風格的重要區別除了表現上的考慮,這邊有一個重要的語義上的不同。用實例屬性設置的實例中,實例有可能被多個對象引用。 以下的區別有意義么? class?A(object): ? ? foo?=?5? ?#?some?default?value Vs class?B(ob...

    moven_j 評論0 收藏0
  • [] 屬性訪問、特性和描述符 2

    摘要:不像其他屬性,描述符在類級別上創建。當所有者類被定義時,每個描述符對象都是被綁定到一個不同的類級別屬性的描述符類實例。這必須返回描述符的值。此外,描述符對有一個方便的響應和請求格式。 注:原書作者 Steven F. Lott,原書名為 Mastering Object-oriented Python __getattribute__()方法 __getattribute__()方法是...

    CloudwiseAPM 評論0 收藏0
  • [] Python 學習 —— __init__() 方法 4

    摘要:同時,有多個類級別的靜態構造函數的方法。這個累贅,無論如何,是被傳遞到每個單獨的對象構造函數表達式中。我們可能只有幾個特定的擔憂,提供額外關鍵字參數給構造函數。 注:原書作者 Steven F. Lott,原書名為 Mastering Object-oriented Python 沒有__init__()的無狀態對象 下面這個示例,是一個簡化去掉了__init__()的類。這是一個常見...

    yvonne 評論0 收藏0
  • []什么是元類metaclass?

    摘要:如果還是沒有找到,就會使用父類中的元類來創建類。元類通常用于處理比較復雜的情況。這是因為使用了元類,它會將中定義的字段轉換成數據庫中的字段。中所有數據類型都是對象,它們要么是類的實例要么是元類的實例。 原文地址:what is metaclass in Python?我的簡書地址::nummy 類即對象 在理解元類之前,需要先掌握Python中的類,Python中類的概念與SmallT...

    zsirfs 評論0 收藏0
  • [] Python 學習 —— __init__() 方法 1

    摘要:第一是在對象生命周期中初始化是最重要的一步每個對象必須正確初始化后才能正常工作。第二是參數值可以有多種形式。基類對象的方法對象生命周期的基礎是它的創建初始化和銷毀。在某些情況下,這種默認行為是可以接受的。 注:原書作者 Steven F. Lott,原書名為 Mastering Object-oriented Python __init__()方法意義重大的原因有兩個。第一是在對象生命...

    MobService 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<