python入門 P37類和物件 物件導向程式設計

2021-10-05 22:31:15 字數 2351 閱讀 9543

class相當於房子圖紙,每個物件是參照圖紙建立的實際的房子,self相當於每一棟房子的門牌號,在下面這段**裡,每個物件都是呼叫了自己那棟房子裡的方法,就是因為self

tips:在方法裡,self必須是第乙個

class

build()

:def

setname

(self,name)

: self.name = name

defcall

(self)

:print

("your name is %s"

% self.name)

building1 = build(

)building1.setname(

"white house"

)building2 = build(

)building2.setname(

"black house"

)building1.call(

)building2.call(

)

如果你的物件實現了魔法方法中的某乙個,這個魔法方法就會在特殊的情況下被python所呼叫

tips:此類魔法方法會被雙下滑線所包圍

class

build()

:def

setname

(self,name)

: self.name = name

defcall

(self)

:print

("your name is %s"

% self.name)

building1 = build(

)building1.setname(

"white house"

)building2 = build(

)building2.setname(

"black house"

)building1.call(

)building2.call(

)class

build()

:def

__init__

(self,num)

:#redefine class make it add a parameter

self.num = num

defkick

(self)

:print

("your num is %s"

% self.num)

building3 = build(3)

# new object

building3.kick(

)# call method

物件的屬性和方法都是公有的,在python中定義私有變數只要在變數名或函式名前加「__」兩個下劃線,那麼這個變數或函式就會變成私有的了,例子如下

class

person()

: name =

"carl"

a = person(

)print

(a.name)

carl
class

person()

: __name =

"carl"

a = person(

)print

(a.name)

attributeerror: 'person' object has no attribute 'name'
想要呼叫則需在類內進行呼叫,**如下

class

person()

: __name =

"carl"

defkick

(self)

:print

("your name is %s"

% self.__name)

return

"finish"

a = person(

)print

(a.kick(

))

your name is carl

finish

但其實python的私有只是偽私有,也可以直接通過別的方法進行呼叫

class

person()

: __name =

"carl"

a = person(

)print

(a._person__name)

carl

python入門 P39類和物件 拾遺

組合就是把舊類例項化放到新類裡面進行呼叫,如下 class chairs def init self,x self.num x class glasses def init self,y self.num y class build def init self,x,y self.chairs cha...

python入門 P36類和物件 給大家介紹物件

下面展示一些python3建立類,類的屬性 方法,以及呼叫的 這裡還用到了多型,物件fighter和defender都呼叫了相同名字的方法,但卻實現的是不同的功能 tips 類的定義首字母一般大寫,方法一般小寫,便於區分 class fight define class name color gre...

C 類和物件入門

物件的含義是指具體的某乙個事物,即在現實生活中能夠看得見摸得著的事物。在物件導向程式設計中,物件所指的是計算機系統中的某乙個成分。在物件導向程式設計中,物件包含兩個含義,其中乙個是資料,另外乙個是動作。物件則是資料和動作的結合體。物件不僅能夠進行操作,同時還能夠及時記錄下操作結果。這是什麼玩意,通俗...