第42258题 单选题
区块链技术是比特币的基础。在区块链中,每个区块指向前一个区块,构成链式列表,新区块只能接在链尾,不允许在中间插入或删除。下面代码实现插入区块添加函数,则横线处填写( )。
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)
{{ option.label }}
子题{{ index + 1 }} {{ child.type_label }}
{{ option.label }}
✓ 正确 ◐ 部分正确 ✗ 错误
程序运行统计
暂无判题统计
知识点:
提交{{ questionInfo.stats ? questionInfo.stats.submit_count : 0 }}次 正确率{{ statsAccuracy }}%
答案解析