|
发表于 2021-6-22 00:00:53
|
显示全部楼层
本楼为最佳答案
本帖最后由 suchocolate 于 2021-6-22 10:57 编辑
供参考。
- import time
- class Account:
- def __init__(self, name):
- self.name = name
- self.account = 0
- self.record = dict()
- # key = time.strftime("%H-%M-%S", time.localtime())
- # value = ['save or expense', '+/-money', 'TYPE', account]
- def __genkey(self):
- return time.strftime("%H-%M-%S", time.localtime()) # 测试需要,时间用时分秒代替了
- def save(self, money):
- self.account += money
- self.record[self.__genkey()] = ['转入', f'+{money}', 'RMB', self.account]
- # self.record[self.__genkey()] = ['转入', f'\033[31m+{money}\033[0m', 'RMB', self.account] # 可选,带颜色
- def expense(self, money):
- self.account -= money
- self.record[self.__genkey()] = ['消费', f'-{money}', 'RMB', self.account]
- # self.record[self.__genkey()] = ['消费', f'\033[32m-{money}\033[0m', 'RMB', self.account] # 可选,带颜色
- def show(self):
- print('交易日期 摘要 金额 币种 余额')
- for k, v in self.record.items():
- print(k, *v)
- if __name__ == '__main__':
- test = Account('test')
- test.save(100)
- test.show()
- time.sleep(2)
- test.expense(20)
- test.show()
复制代码 |
|