Python 類屬性和例項屬性

2021-09-12 17:16:50 字數 994 閱讀 3103

一、簡述二者區別

對類屬性的修改可被儲存在類中(單例模式就是基於類屬性的這種特性),修改後的屬性能夠被子類繼承

例項屬性的修改只對該例項有效,不會對其他例項和其對應類的子類例項造成影響

二、來看下例子:

類屬性:

class a(object):

a = 1

pass

print(a.a) # 檢視a類的屬性a,結果為1

a.a = 2 # 對a類的屬性a進行修改

class b(a): # b類繼承a類

pass

print(b.a) # 列印出b類屬性a為2

例項屬性:

class a(object):

def __init__(self,age):

self.name = "allen" # 有個固定的例項屬性name = "allen"

self.age = age

a = a(12) # 建立例項a

aa = a(11) # 建立例項aa

print(a.name,a.age) # 結果為:allen 12

print(aa.name,aa.age) # 結果為:allen 11

a.name = "ellen" # 修改例項a的屬性name

print(a.name,a.age) # 結果為:ellen 12

print(aa.name,aa.age # 結果為:allen 11

class b(a): # 建立類b,繼承自類a

pass

b = b(15) # 建立物件b

print(b.name,b.age) # 結果為:allen 15

python 例項屬性和類屬性

如何在乙個類中定義一些常量,每個物件都可以方便訪問這些常量而不用重新構造?第乙個問題,在 python 的類裡,你只需要和函式並列地宣告並賦值,就可以實現這一點,例如這段 中的 welcome str。一種很常規的做法,是用全大寫來表示常量,因此我們可以在類中使用 self.welcome str ...

Python類屬性,例項屬性

dreamfor的部落格 1.python類資料屬性 定義在類裡面但在函式外面的變數,它們都是靜態的。一段很簡單的 但反應了很多 class a a 1 乙個類裡面有個屬性a a a b a a.a b.a a.a 這個屬效能被例項和類訪問 a.a 2 b.a a.a 改變例項a的屬性a,例項b和類...

Python 類屬性 例項屬性

1.類的三大要素 類名 屬性 方法 屬性又分為例項屬性和類屬性 1 class tool object 2 屬性3 num 045 方法6def init self,new name 7 self.name new name 寫在 init 中的是例項屬性,也是通過方法定義的,是跟著例項物件的 寫在...