← 返回题库
中级

观察者模式日志系统

未完成
中级参考 代码结构已给出,请填写 ____ 处
def solve():
    from abc import ABC, abstractmethod
    class AbstractHandler(____):
        @abstractmethod
        def emit(____): pass
    class ConsoleHandler(____):
        def emit(____):
            return f'____'
    class FileHandler(____):
        def emit(____):
            return f'____'
    class Logger:
        def __init__(____):
            self.handlers = []
        def add_handler(____):
            self.handlers.append(____)
        def log(____):
            return '____'.join(h.emit(____) for h in self.handlers)
    logger = Logger()
    logger.add_handler(ConsoleHandler())
    logger.add_handler(FileHandler())
    print(logger.log(____))

示例

输入
solve()
期望输出
CONSOLE:error;FILE:error
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码