个人博客:http://101python.cn/
在上一篇《》中讲述了区块链的基础知识,并用Python实现了区块和区块链的结构。在本篇中,将基于上面的内容实现一个简单的记账本功能。
记账本的功能如下:
实现基本的收支记录;
计算当前余额;
对收支情况做简单统计分析。
账单记录的格式如下:
日期|描述|金额
下面开始一步步实现上述功能。
一、定义收支记录
在上一篇中区块的内容是简单的文本,这里实现将基于Block实现一个支持收支记录格式的类,代码如下:
fromdatetime importdatetime
classAccountBill(Block):def__init__(self,content,amount):t =datetime.now().strftime('%Y-%m-%d %H:%M:%S')
data ="{}|{}|{}".format(t,content,amount)
returnsuper(AccountBill,self).__init__(data)
defget_amount(self):"""获取金额数量:return:
"""amount =0ifself.data:amount =int(self.data.split('|')[2])
returnamount
defget_content(self):content =''ifself.data:content =self.data.split('|')[1]