Python 物件導向基礎01

2021-08-27 21:21:33 字數 2428 閱讀 8128

當有乙個問題擺在我面前,傳統思路是我親自上陣,把問題解決。下一次當類似的問題再次出現時,我再上,再解決。。。。。。。。如此重複,不知道什麼時候是個頭。

寫程式也是這樣,面對類似的問題時,如果每次都是從零開始,工作學習的效率將會十分低下,因為總是在重複相同的工作。

物件導向則把我從執行者的角色公升級為了指揮者。我不用再親自上陣,只用建立解決問題的物件,指揮它去解決問題。

這樣不僅解決了**的復用問題,提高了效率,而且讓解決問題的思路變得十分清晰。

類:具有相似的內部狀態和運動規律的實體集合,具有相同的屬性和行為事物的統稱。

比如水果

物件:

某乙個具體事物的存在,在現實世界中看得見摸的著

比如蘋果

類的組成:由三個部分組成

類的名字:類名

類的屬性:一組資料

類的方法:函式(方法)

定義類的格式:兩種

格式01:

class 類名:

def__init__(self):

#init函式在建立物件時自動呼叫

deffunction01():

pass

deffunction02():

pass

.................

格式02:

class 類名(object):#object為所有類的父類

def__init__(self):

#init函式在建立物件時自動呼叫

deffunction01():

pass

deffunction02():

pass

.................

接下來我們定義乙個貓類:

class

cat:

def__init__

(self):

self.color = 'yellow'

defeat

(self):

print("貓在吃魚....")

defdrink

(self):

print("貓在喝水....")

物件的建立:

物件名 = 類名()

建立乙個cat類的物件,並獲取cat中的屬性和方法

tom = cat()

tom.color

tom.eat()

tom.drink()

所謂self—->自身(自己)

某乙個物件呼叫其方法時,python直譯器會把物件作為第乙個引數傳遞給self

定義乙個汽車類

class

car:

def__init__

(self,newwheelnum,newcolor):

self.wheelnum = newwheelnum

self.color = newcolor

建立車類的物件

bmw = car(4,"黑色")

print(bmw.color)

print(bmw.wheelnum)

byd = car(6,"花色")

print(byd.color)

print(byd.wheelnum)

「」」

總結:

init():在建立乙個物件時被預設呼叫,不需要手動呼叫

init():預設有乙個引數self—-》函式自身,如果在建立物件時傳遞2個實參,

self不需要開發者傳遞,python直譯器會自動把當前的物件的引用傳遞進去

「」「定義:

魔方—-》特殊的方法

指被包含下劃線的方法的統稱,統稱在特殊的情況下呼叫—-》魔方方法

class

car:

def__init__

(self,newwheelnum,newcolor):

self.wheelnum = newwheelnum

self.color = newcolor

def__str__

(self):

msg = "嘿嘿...我的顏色是"+self.color+"我有"+self.wheelnum+"個輪子"

return msg

#建立物件

bmw = car("4","白色")

print(bmw)

總結:

在python中,方法名字如果是***(),那麼就具有特殊的功能—-》魔方方法

當使用print()輸入物件的時候,只需要定義乙個str方法,就會列印return中的資料

python基礎四 01 物件導向

物件導向程式設計與面向過程程式設計是兩種常見的程式設計思想。先通過引子來看下 話說三國時期,曹操帶領百萬大軍攻打東吳,大軍在長江赤壁駐紮,軍船連成一片。眼看就要滅了東吳,統一天下,曹操大悅,於是大宴眾文武。在酒席間,曹操詩性大發,不覺吟道 喝酒唱歌,人生真爽.眾文武齊呼 丞相好詩!於是命印刷工匠刻版...

python物件導向01

如圖的繼承關係,然後驗證經典類與新式類在查詢乙個屬性時的搜尋順序 class b def test self print from b pass class c def test self print from c pass class d b,c def test self print from ...

物件導向01 基礎篇

物件導向基礎 一 物件導向的概念 1.物件導向的概念 面向過程的思想是拿到一件事,首先考慮的是該怎麼去做 而物件導向的思想是拿到一件事考慮的是該讓誰去做 物件導向是將面向過程中的執行者變成指揮者,使用物件導向的開發降低 的耦合度 一般將具有 封裝,繼承,多型 等特徵的程式語言稱為具有物件導向思想的程...