Python区块链 区块类
一个区块由不同数量的交易组成。为了简单起见,在我们的案例中,我们将假设区块由固定数量的交易组成,在本案例中是三个。由于区块需要存储这三个交易的列表,我们将声明一个名为 verified_transactions的 实例变量,如下所示
self.verified_transactions = []
我们将这个变量命名为 verified_transactions ,表示只有经过验证的有效交易才会被添加到区块中。每个区块也持有前一个区块的哈希值,所以区块链是不可改变的。
为了存储前一个哈希值,我们声明一个实例变量,如下所示
self.previous_block_hash = ""
最后,我们再声明一个名为 Nonce 的变量,用于存储矿工在采矿过程中创建的nonce。
self.Nonce = ""
Block 类的完整定义如下
class Block:
def __init__(self):
self.verified_transactions = []
self.previous_block_hash = ""
self.Nonce = ""
由于每个区块都需要前一个区块的哈希值,我们声明一个名为 last_block_hash 的全局变量,如下所示
last_block_hash = ""
现在让我们在区块链中创建我们的第一个区块。