脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - Python - Python区块链创世块创建教程

Python区块链创世块创建教程

2023-02-15 14:10菜鸟教程 Python

这篇文章主要为大家介绍了Python区块链创世块创建教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

区块链包含彼此链接的区块列表.要存储整个列表,我们将创建一个名为TPCoins : 的列表变量;

?
1
TPCoins = []

我们还将编写一个名为 dump_blockchain 的实用程序方法来转储整个区块链的内容.我们首先打印区块链的长度,以便我们知道区块链中当前存在多少个区块

?
1
2
def dump_blockchain (self):
   print ("Number of blocks in the chain: " + str(len (self)))

请注意,随着时间的推移,数字块链中的块对于打印来说会非常高.因此,当您打印区块链的内容时,您可能必须决定要检查的范围.在下面的代码中,我们打印了整个区块链,因为我们不会在当前演示中添加太多块.

要遍历链,我们设置了 for 循环如下 :

?
1
2
for in range (len(TPCoins)):
   block_temp = TPCoins[x]

每个被引用的块都被复制到一个名为 block_temp 的临时变量.

我们打印块编号作为每个块的标题.请注意,数字将从零开始,第一个块是编号为零的创世块.

?
1
print ("block # " + str(x))

在每个块中,我们在一个名为 ;verified_transactions

?
1
2
for transaction in block_temp.verified_transactions:
   display_transaction (transaction)

整个函数定义如下所示;

?
1
2
3
4
5
6
7
8
9
def dump_blockchain (self):
   print ("Number of blocks in the chain: " + str(len (self)))
   for in range (len(TPCoins)):
      block_temp = TPCoins[x]
      print ("block # " + str(x))
      for transaction in block_temp.verified_transactions:
         display_transaction (transaction)
         print ('--------------')
      print ('=====================================')

注意在这里,我们在代码中的适当位置插入了分隔符,以划分其中的块和事务.

由于我们现在已经创建了一个用于存储块的区块链,我们的下一个任务是创建块并开始将其添加到区块链中.为此,我们将添加您在前面步骤中创建的创世块,更多关于Python区块链的资料请关注服务器之家其它相关文章!

原文链接:https://www.it1352.com/OnLineTutorial/python_blockchain/python_creating_blockchain.html

延伸 · 阅读

精彩推荐