区块链技术是比特币的基础。在区块链中,每个区块指向前一个区块,构成链式列表,新区块只能接在链尾,不允许在中间插入或删除。下面代码实现插入区块添加函数,则横线处填写( )。
class Block:
def __init__(self, idx, data, prev_block):
self.index = idx
self.data = data
self.prev = prev_block
class Blockchain:
def __init__(self):
self.tail = None
def init(self):
genesis_block = Block(0, "Genesis Block", None)
self.tail = genesis_block
def add_block(self, data):
____________________________________
def clear(self):
cur = self.tail
while cur is not None:
prev_block = cur.prev
cur.prev = None
cur = prev_block
self.tail = None
def print_chain(self):
cur = self.tail
chain = []
while cur is not None:
chain.append(f"Block {cur.index}: {cur.data}")
cur = cur.prev
for block_info in reversed(chain):
print(block_info)