Python区块链教程

创建区块链

Python区块链创建区块链详细操作教程
区块链包含相互链接的区块列表。为了存储整个列表,我们将创建一个名为TPCoins的列表变量-
# Filename : example.py
# Copyright : 2020 By Lidihuo
# Author by : www.lidihuo.com
# Date : 2020-08-28
TPCoins = []
我们还将编写一个名为 dump_blockchain 的实用程序方法,用于转储整个区块链的内容。我们首先打印区块链的长度,以便知道区块链中当前存在多少个区块。
# Filename : example.py
# Copyright : 2020 By Lidihuo
# Author by : www.lidihuo.com
# Date : 2020-08-28
def dump_blockchain (self):
   print ("Number of blocks in the chain: " + str(len (self)))
请注意,随着时间的流逝,用于打印的区块链中的区块数量将非常多。因此,当您打印区块链的内容时,您可能必须决定要检查的范围。在下面的代码中,我们已经打印了整个区块链,因为在当前演示中不会添加太多块。
要遍历整个链,我们如下设置 for 循环-
# Filename : example.py
# Copyright : 2020 By Lidihuo
# Author by : www.lidihuo.com
# Date : 2020-08-28
for x in range (len(TPCoins)):
   block_temp = TPCoins[x]
每个引用的块都复制到一个名为 block_temp 的临时变量中。
我们将块号打印为每个块的标题。请注意,数字将从零开始,第一个块是编号为零的创世块。
# Filename : example.py
# Copyright : 2020 By Lidihuo
# Author by : www.lidihuo.com
# Date : 2020-08-28
print ("block # " + str(x))
在每个区块中,我们已将三个交易的列表(除了创世区块)存储在名为 verified_transactions 的变量中。我们在 for 循环中迭代此列表,对于每个检索到的项目,我们调用 display_transaction 函数以显示交易明细。
# Filename : example.py
# Copyright : 2020 By Lidihuo
# Author by : www.lidihuo.com
# Date : 2020-08-28
for transaction in block_temp.verified_transactions:
   display_transaction (transaction)
整个功能定义如下所示-
# Filename : example.py
# Copyright : 2020 By Lidihuo
# Author by : www.lidihuo.com
# Date : 2020-08-28
def dump_blockchain (self):
   print ("Number of blocks in the chain: " + str(len (self)))
   for x in range (len(TPCoins)):
      block_temp = TPCoins[x]
      print ("block # " + str(x))
      for transaction in block_temp.verified_transactions:
         display_transaction (transaction)
         print ('--------------')
      print ('=====================================')
请注意,这里我们在代码的适当位置插入了分隔符,以在其中划分块和事务。
由于我们现在已经创建了用于存储块的区块链,所以我们的下一个任务是创建块并将其添加到区块链中。为此,我们将添加您在先前步骤中已经创建的创世纪块。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4