Python 区块链 - Block 类



块包含不同数量的交易。为了简单起见,在我们的示例中,我们将假设块包含固定数量的交易,本例中为三个。由于块需要存储这三个交易的列表,因此我们将声明一个名为 verified_transactions 的实例变量,如下所示 -

self.verified_transactions = []

我们已将此变量命名为 verified_transactions,以表明只有经过验证的有效交易才会添加到块中。每个块还保存前一个块的哈希值,这样块链就变成了不可变的。

要存储前一个哈希值,我们声明实例变量,如下所示 -

self.previous_block_hash = ""

最后,我们声明一个名为 Nonce 的变量,用于存储矿工在挖掘过程中创建的随机数。

self.Nonce = ""

Block 类的完整定义如下 -

class Block:
   def __init__(self):
      self.verified_transactions = []
      self.previous_block_hash = ""
      self.Nonce = ""

由于每个块都需要前一个块哈希值,因此我们声明一个名为 last_block_hash 的全局变量,如下所示 -

last_block_hash = ""

现在让我们在区块链中创建我们的第一个块。

广告