建立例項
class
father
: counter =
"父級"
def__init__
(self, name, age)
: self.name = name
self.age = age
self.__name2=name
defshow
(self)
:# print("共有部分")
counter =
"-->"
print
("%s 是父級 ,%s 年紀是 %d"
%(self.name, counter, self.age)
)def
showin
(self)
:print
(self.__name2)
one = father(
"老王",66
)two = father(
"老趙",77
)one.show(
)two.show(
)
1.建立例項one 執行father
2.father執行時 執行__init__ 方法 在__init__ 執行時 self建立name和age屬性並獲取形參的值
3.father()返回例項賦值給one
例項變數& 類變數
例項變數name,age 為例項獨有屬性。 在初始化例項的時候,通過__init__建構函式建立
類變數counter 靜態字段 是例項共有屬性,若乙個例項修改其內容,則其他例項獲取內容均修改
例項時無法修改類變數的,因為one.counter 會操作 one物件裡的 counter 屬性 不會修改類father 裡的
counter
例項變數使用例項訪問,類變數使用類訪問
私有變數
變數前加__ 只能在類的內部可以操作 。__name2 只能在類的內部函式可以讀寫,不能被例項呼叫
類中的其他方法為所有例項共享,通過init函式初始化生成的屬性為例項獨享,類似js建立例項 建構函式與原型的組合方式
python 隨筆 類的約束
約束 在多人協作的專案中。有些地方需要約束程式的結構。把相應的功能定義好。防止多人協作時程式不統一,造成不必要的麻煩。其他語言中大部分都有介面,在python中是沒有介面這一說法。實現方法 常用方法使用繼承的特性 提取父類,然後在父類中定義好方法,在這個方法中什麼都不寫,就丟擲個異常就可以了。這樣所...
python中的類,類變數,例項變數
這幾天寫 的時候碰到乙個python中的小問題,找了好半天才解決,所以記錄下來。classa object def init self self.x y def call self for i in range 5 print x self.x print y y 輸出的結果是 x 5,5,5,5,...
python的類變數和成員變數
先看看下面 python view plain copy class testclass object val1 100 def init self self val2 200def fcn self val 400 val3 300 self val4 val self val5 500if na...