python交易记录整合交易类详解

yipeiwu_com7年前Python基础

接着上一篇,这里继续整合交易类。

import datetime
#交易类,后期需要整合公钥,私钥
class Transaction:
  #payer 付款方,receiver收款方
  def __init__(self,payer,receiver,money):
    self.payer = payer
    self.receiver = receiver
    self.money = money
    self.timestamp = datetime.datetime.now() #交易时间
  def __repr__(self):
    return str(self.payer)+" pay "+str(self.receiver)+" "+str(self.money)+" "+str(self.timestamp)
if __name__=="__main__":
  t = Transaction("yicheng","ddd",100)
  print(t)

测试模块:

if __name__=="__main__":
  t1 = Transaction("yicheng", "ddd1", 100)
  t2 = Transaction("yicheng", "ddd2", 200)
  t3 = Transaction("yicheng", "ddd3", 300)
  m1 = DaDaMessage(t1)
  m2 = DaDaMessage(t2)
  m3 = DaDaMessage(t3)
  try:
    m1.seal()
    m2.link(m1)
    m2.seal()
    m3.link(m2)
    m3.seal()
    #m1.hash = "0xaaaajjjjj"
    #m1.data = "I don't love "
    m1.validate()
    m2.validate()
    m3.validate()
    print(m1)
    print(m2)
    print(m3)
  except InvalidateMessage as e:
    print(e)

查看打印结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中循环后使用list.append()数据被覆盖问题的解决

前言 最近发现一个问题,在一次爬虫实战中,需要将字典加入列表中,意外的情况出现了!!!下面简单分析一下出现的状况: list = [] dic = {} for i in range...

Python中用altzone()方法处理时区的教程

 altzone()方法是time模块的属性。当地的DST时区的这返回的偏移量,在UTC西部秒钟,如果一个定义。这是负值,如果当地的DST时区为UTC东边(如西欧,包括英国)。...

PyCharm 2019.3发布增加了新功能一览

PyCharm 2019.3发布增加了新功能一览

Python的IDE(Integrated Development Environment 集成开发环境)非常多,如:VS Code、Sublime、NotePad、Python自带编辑...

node.js获取参数的常用方法(总结)

1、req.body 2、req.query 3、req.params 一、req.body例子 body不是nodejs默认提供的,你需要载入body-parser中间件才可以使用re...

解决Django删除migrations文件夹中的文件后出现的异常问题

migrate文件记录了每一次数据迁移的改变 解决方法:重建数据库 1.删除数据库 错误方法: python manage.py shell from app.models impo...