python學習筆記9(物件導向應用例項)

2021-10-12 07:35:34 字數 2336 閱讀 5138

物件導向就是將程式設計當成是乙個事物,對外界來說,事物是直接使用的,不用去管他內部的情況。而程式設計就是設定事物能夠做什麼。

:對一系列具有相同特徵和行為的事物的統稱,抽象概念,用來建立物件

特徵即是屬性;行為即是方法

物件:類建立出來的真實存在的事物

應用例項1:烤地瓜

"""

需求:被烤的時間和對應的地⽠狀態:

0-3分鐘:生的

3-5分鐘:半生不熟

5-8分鐘:熟的

超過8分鐘:烤糊了

2. 新增的調料:

使用者可以按自己的意願新增調料

"""class

sweetpotato()

:def

__init__

(self)

:# 時間

self.cook_time =

0# 狀態

self.cook_static =

'生的'

# 調料

self.condiments =

defcook

(self, time)

:"""烤地瓜的方法"""

self.cook_time += time

if0<= self.cook_time <3:

self.cook_static =

'生的'

elif

3<= self.cook_time <5:

self.cook_static =

'半生不熟'

elif

5<= self.cook_time <8:

self.cook_static =

'熟了'

elif self.cook_time >=8:

self.cook_static =

'烤糊了'

defadd_condiment

(self, condiment)

:"""新增調料"""

# 用於輸出物件狀態

def__str__

(self)

:return f'這個地瓜烤了分鐘, , 新增的調料有'

# 建立物件,測試例項屬性和方法

digua1 = sweetpotato(

)print

(digua1)

digua1.cook(2)

digua1.add_condiment(

'糖')

print

(digua1)

digua1.cook(2)

digua1.add_condiment(

'蜂蜜'

)print

(digua1)

digua1.cook(2)

print

(digua1)

digua1.cook(2)

print

(digua1)

應用例項2:搬家具

"""

需求,將小於房間剩餘面積的家具放入房間

分析:房間類:地理位置、總面積、剩餘面積、家具列表;容納家具方法;顯示房間資訊

家具類:家具名稱、家具占地面積

"""class

furniture()

:def

__init__

(self, name, area)

: self.name = name

self.area = area

class

room()

:def

__init__

(self, address, area)

: self.address = address

self.area = area

self.residue_area = area

self.furniture =

defadd_furniture

(self,furniture)

: self.residue_area = self.area - furniture.area

def__str__

(self)

:return f'房間位於,總面積,剩餘面積,家具有'

room1 = room(

'郊區'

,200

)print

(room1)

table = furniture(

'table',20

)room1.add_furniture(table)

print

(room1)

Python學習9 物件導向程式設計

廖雪峰的部落格 在物件導向程式設計中需要考慮 物件 屬性 方法,例項化。物件導向程式設計具有三大特點 資料封裝 繼承和多型 舉例 列印學生成績。處理學生的成績表,如果採用物件導向的程式設計思想,我們首選思考的不是程式的執行流程,而是student這種資料型別應該被視為乙個物件,這個物件擁有name和...

Python學習筆記 物件導向

物件導向 oop 基本概念 物件導向程式設計 object oriented programming簡寫 oop 1 物件導向基本概念 之前的學習程式設計方式就是面向過程的 面向過程和物件導向,是兩種不同的程式設計方式 對比面向過程的特點,可以更好的了解什麼是物件導向 2 過程和函式 科普 過程是最...

廖雪峰python學習筆記9 物件導向高階

coding utf 8 動態語言很方便,當我們定義了乙個class的例項後 可以給它繫結任何屬性和方法,這就是動態語言的靈活性 class student object pass 繫結各種屬性 st student st.name leo st.major network engineering ...