我正在嘗試構(gòu)建一個(gè)預(yù)算應(yīng)用程序,它將幫助我更好地構(gòu)建和管理資金。我已經(jīng)確定我需要管理三種類(lèi)型的費(fèi)用: - 每日(如交通費(fèi)用、工作零食) - 每周購(gòu)買(mǎi)(如雜志、書(shū)籍) - 每月費(fèi)用(租金、水電費(fèi))我已經(jīng)用 Python 編寫(xiě)了一個(gè)通用類(lèi),它可以捕獲所有這些,但我想給自己更詳細(xì)的信息,說(shuō)明每個(gè)費(fèi)用類(lèi)每月花費(fèi)我多少,并可能把它放到日歷上。我想知道如何將上述費(fèi)用類(lèi)型實(shí)現(xiàn)為類(lèi),并將它們?nèi)繉?xiě)入一個(gè)公共類(lèi),在那里它們可以分類(lèi)和格式化為易于識(shí)別的組,如“每日”、“每周”和“每月”但下降在一個(gè)通用界面下,我可以在上述結(jié)構(gòu)中匯總費(fèi)用,以便快速查看和計(jì)劃等。有什么建議么?我對(duì) Python Coding 非常陌生——到目前為止,這個(gè)想法讓我很難過(guò)代碼:class Expenses:def __init__(self): self.list = []"""Create dict containing expense"""def add_expense(self, name, cost, describe): val = {"Name": name, "Cost": cost, "Description": describe } return self.list.append(val)"""Show all of the expenses contained in the list self.list"""def list_expenses(self): for i in self.list: for k, v in i.items(): print('%s: %s' % (k, v))"""add up the total of all expenses in self.list"""def total_expenses(self): total = 0 for i in self.list: for k, v in i.items(): if k == "Cost": total += v return total"""remove the given expense I should create a key that can be used as an indexer"""def delete_expense(self, num): return self.list.pop(num)這可以按我的意愿工作 - 但就像我也試圖暗示一樣,我想為這門(mén)課添加更多細(xì)節(jié),我正在使用它來(lái)學(xué)習(xí) OOP。我不介意使用普通的命令式代碼
1 回答

qq_花開(kāi)花謝_0
TA貢獻(xiàn)1835條經(jīng)驗(yàn) 獲得超7個(gè)贊
我真的相信你想多了,但無(wú)論如何我認(rèn)為你的問(wèn)題最簡(jiǎn)單的解決方案是在你的根類(lèi)中添加另一個(gè)屬性。
此屬性將確定time_span
費(fèi)用(每天、每周或每月),
然后您將能夠?qū)崿F(xiàn)諸如daily_expenses(date)
,weekly_expenses(time_range)
或monthly_expenses(datetime_month)
(您的時(shí)間范圍或日期選項(xiàng)實(shí)際上是無(wú)窮無(wú)盡的......)
添加回答
舉報(bào)
0/150
提交
取消