python物件導向方式 烤地瓜

2022-06-20 03:27:11 字數 2063 閱讀 2683

# 以物件導向的方式分析烤地瓜

# 1. 抽象類,在程式中定義類

# 定義地瓜類

# 定義人類

# 2. 分析地瓜類的成員

# 2.1 屬性: 烤地瓜的狀態, 烤地瓜的時間, 佐料列表屬性

# 2.2 方法: 無

# 3. 分析人類的成員

# 3.1 屬性: 姓名, 烤齡,性別

# 3.2 方法: 烤地瓜的行為方法,新增佐料方法

# 人類

class person(object):

def __init__(self, name, age):

self.name = name

# 烤齡

self.age = age

# 提供烤地瓜的行為方法

def roast(self, time, roast_sp):

# 把每次傳入的時間,累加到烤地瓜的時間屬性上

roast_sp.roast_time += time

# 根據烤地瓜的總時間來判斷地瓜的狀態

if roast_sp.roast_time > 10:

roast_sp.roast_status = "烤糊了"

elif roast_sp.roast_time > 6: # [7,10]

roast_sp.roast_status = "烤熟了"

elif roast_sp.roast_time > 3: # [4, 6]

roast_sp.roast_status = "半生不熟"

else:

roast_sp.roast_status = "生的"

def __str__(self):

return "姓名: %s 烤齡: %d" % (self.name, self.age)

# 地瓜類

class sweetpotato(object):

def __init__(self):

# 給地瓜物件新增屬性資訊

# 烤地瓜的狀態

self.roast_status = "生的"

# 烤地瓜的時間, 相當於烤地瓜的總時間

self.roast_time = 0

# 佐料列表

self.condiment_list =

def __str__(self):

# 判斷地瓜有沒有佐料

if self.condiment_list:

# ["番茄醬", "辣椒醬"] => "番茄醬,辣椒醬"

condiment_list_str = ",".join(self.condiment_list)

return self.roast_status + "地瓜" + "[" + condiment_list_str + "]"

else:

return self.roast_status + "地瓜"

print("**********=準備開始烤地瓜啦**********=")

# 通過類建立乙個地瓜物件

sp = sweetpotato()

print(sp)

# 通過類建立乙個烤地瓜的師傅

person = person("老王", 10)

print(person)

print("**********=先烤三分鐘**********=")

person.roast(3, sp)

print(sp)

print("**********=再烤三分鐘**********=")

person.roast(3, sp)

print(sp)

print("**********=再烤三分鐘**********=")

person.roast(3, sp)

print(sp)

print("**********=新增佐料**********=")

person.add_condiment("番茄醬", sp)

person.add_condiment("辣椒醬", sp)

print(sp)

# 總結:物件導向要找合適的功能物件,合適方法需要放到合適類裡面

物件導向分析烤地瓜專案

1 物件導向分析烤地瓜23 1.抽象類4 1.1人類5 1.2地瓜類67 8 分析人類裡面的屬性和方法9 屬性 名字,性別,烤齡10 方法 烤地瓜的方法,新增佐料 1112 地瓜類中的屬性和方法13 屬性 烤地瓜的狀態,烤地瓜的時間,佐料列表14 方法 無 1516 17class person o...

物件導向案例 烤地瓜 搬家具python實現

烤地瓜案例 1 定義類 初始化屬性 被烤和新增調料的方法 顯示物件資訊的str class sweetpotato 定義地瓜的初始化屬性 def init self 被烤的時間 self.cook time 0 烤的狀態 self.cook state 生的 調料列表 self.condiments...

python烤地瓜例項(深入理解物件導向程式設計)

定義乙個地瓜類 class sweetpotato def init self self.cookedstring 生的 self.cookedlevel 0 self.condiments 為了能夠儲存多個資料,往往在開發中讓乙個屬性是列表 def str self return 地瓜 狀態 s ...