面向对象实现银行账户的资金交易管理
本帖最后由 easyboy 于 2021-6-21 23:02 编辑用类和对象实现自己银行账户的资金交易管理吧,包括存款、取款和打印交易详情,交易详情中包含每次交易的时间、存款或者取款的金额、每次交易后的余额。
如图
存入打印+
取出打印-
如何实现如图 这种存入打印+\取出打印-这种格式 本帖最后由 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 = ['转入', f'+{money}', 'RMB', self.account]
# self.record = ['转入', f'\033# 可选,带颜色
def expense(self, money):
self.account -= money
self.record = ['消费', f'-{money}', 'RMB', self.account]
# self.record = ['消费', f'\033# 可选,带颜色
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() suchocolate 发表于 2021-6-22 00:00
供参考。
不一定要这么骚的操作把,反正负数能被显示出来,输出的时候,为正就打印一个加号。 suchocolate 发表于 2021-6-22 00:00
供参考。
f'+{money}' 格式化不错差点忘了还有这个 z5560636 发表于 2021-6-22 09:15
不一定要这么骚的操作把,反正负数能被显示出来,输出的时候,为正就打印一个加号。
格式化一下就行了,被2L启发了 1楼敲这么多代码不给人家一个最佳? nahongyan1997 发表于 2021-6-22 22:35
1楼敲这么多代码不给人家一个最佳?
对啊哈哈哈{:10_254:}
页:
[1]