python基礎 物件導向

2021-08-21 07:50:33 字數 2896 閱讀 1583

一、概念

概念:

向物件最重要的概念就是類(class)和例項(instance),

必須牢記類是抽象的模板,比如student類,

而例項是根據類創造出來的乙個個具體的「物件」,

每個物件都擁有相同的方法,但各自的資料可能不同

'''

設計類類名:見名知意,首字母大寫,其他遵循駝峰命名法

屬性:見名知意,其他遵循駝峰命名原則

行為:(方法/功能):見名知意,其他遵循駝峰命名原則

建立類類:一種資料型別,本身並不佔記憶體空間,

根據所學過的number,string,boolean等類似。

用類建立例項化物件(變數),物件佔記憶體空間

格式:class 類名(父類列表):

屬性行為

'''#object:基類,超類,所有類的父類,那麼一般沒有合適的父類就寫object

class perpose(object):

#定義屬性(定義變數)

name = ''

age = 0

height = 0

weught = 0

#定義方法(定義函式)

#注意:方法的引數必須以self當第乙個引數

#self代表類的例項(某個物件)

def run(self):

print("run")

def eat(self,food):

print("eat"+food)

二、使用類例項化物件

class person(object):

name = ''

age = 0

height = 0

weught = 0

def run(self):

print("run")

def eat(self,food):

print("eat"+food)

'''例項化物件

格式:物件名 = 類名(引數列表)

注意:沒有引數,小括號也不能省略

'''#例項化乙個物件

per1 = person()

print(per1)

print(type(per1))

print(id(per1))

per2 = person()

print(per2)

print(type(per2))

print(id(per2))

<__main__.person object at 0x002462d0>

2384592

<__main__.person object at 0x00246330>

2384688

三、訪問物件的屬性和方法

class person(object):

name = ''

age = 0

height = 0

weught = 0

def run(self):

print("run")

def eat(self,food):

print("eat "+food)

def opendoor(self):

print("我已經開啟了冰箱門")

def fillele(self):

print("我已經把大象裝進冰箱了")

def colsedoor(self):

print("我已經關上冰箱門了")

per = person()

'''訪問屬性

格式:物件名.屬性名

賦值:物件名.屬性名 = 新值

'''per.name = 'tom'

per.age = 18

per.height = 160

per.weight = 80

print(per.name,per.age,per.height,per.weight)

'''訪問方法

格式:物件名.方法名(引數列表)

'''per.opendoor()

per.fillele()

per.colsedoor()

tom 18 160 80

我已經開啟了冰箱門

我已經把大象裝進冰箱了

我已經關上冰箱門了

四、物件的初始狀態(建構函式)

class person(object):

#name = ''

#age = 10

#height = 100

#weight = 60

def run(self):

print("run")

def eat(self,food):

print("eat "+food)

def __init__(self,name,age,height,weight):

#print(name,age,height,weight)

#定義屬性

self.name = name

self.age = age

self.weight = weight

self.height = height

'''建構函式:_init_() 在使用類建立物件的時候自動呼叫

注意:如果不顯示的寫出建構函式,預設自動新增乙個空的建構函式

'''per = person("tom",18,170,50)

print(per.name,per.age)

per2 = person("lilei",19,160,45)

print(per2.name,per2.age)

tom 18

lilei 19

python物件導向基礎 python物件導向基礎

面向過程與物件導向 面向過程的程式設計的核心是過程 流水線式思維 過程即解決問題的步驟,面向過程的設計就好比精心設計好的一條流水線,考慮周全什麼時候處理什麼東西。優點 極大降低了寫程式的複雜度,只需要順著要執行的步驟,堆疊 即可。缺點 一套流水線或者流程就是解決乙個問題,牽一髮而動全身。應用場景 一...

Python之物件導向 物件導向基礎

一 面向過程 物件導向對比 1 面向過程 根據業務邏輯從上到下寫壘 2 函式式思想 將某功能 封裝到函式中,日後便無需重複編寫,僅呼叫函式即可 3 物件導向 對函式進行分類和封裝 1 2 3一步一步抽象,函式式是走向物件導向的中間步驟 函式式的應用場景 各個函式之間是獨立且無共用的資料 物件導向程式...

python物件導向基礎

類是例項的模版,例項是根據類建立的乙個具體物件,每個物件都有相同的方法,但是各自的資料不同。如果要讓內部屬性不被外部訪問,可以把屬性的名稱前加上兩個下劃線 在python中,例項的變數名如果以 開頭,就變成了乙個私有變數 private 只有內部可以訪問,外部不能訪問 當子類和父類都存在相同的run...