审查生成的命令分派器

来自 控制流
Python 3.14 高级 6分钟 找出 4处问题

在这段生成的命令分派器处理大型队列前审查它。

最多分派 limit 条命令,只允许 admin 和 operator 角色,并在任何 quit 命令处停止,包括带 payload 的 quit。handlers 映射包含所有非 quit 动作。

Python
def dispatch_commands(commands, role, handlers, limit):
    completed = []
    dispatched = 0

    while commands and dispatched <= limit:
        command = commands.pop(0)

        match command:
            case {"action": action, "payload": payload}:
                if role == "admin" or "operator":
                    result = handlers[action](payload)
                    completed.append(result)
                    dispatched += 1
            case {"action": "quit"}:
                break
            case _:
                continue
    else:
        print("all commands processed")

    return completed

生成代码仅作示例,不代表任何特定模型

在试验场中打开
报告错误