Python 区块链 - 块类
一个区块由不同数量的交易组成。为了简单起见,在我们的例子中,我们假设该块由固定数量的交易组成,在本例中为三个。由于块需要存储这三个交易的列表,我们将声明一个名为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 = ""
现在让我们在区块链中创建第一个区块。