Python装饰器实践与命令调度系统的构建
发布时间
阅读量:
阅读量
装饰器的应用
一、写一个命令分发器
开发人员能够便捷地将特定函数关联至某一指令,当用户输入对应指令时,系统会自动调用已注册的函数进行处理。若用户输入的指令未在系统中注册对应的函数,则会触发默认函数的执行流程。用户输入操作通过input(">>")实现。
分析:
用户输入的指令需被映射至相应的处理函数并加以执行,如需持续输入可借助while循环实现。在查找对应函数是否存在时,字典结构恰好能够满足需求。当用户输入某一特定cmd指令后,若未能匹配到对应的处理函数,则需调用预设的默认函数进行处理,而字典的缺省参数机制正好适用于该场景。
commands = {} #定义空字典
def reg (name,fn): # 用函数将定义的函数存在字典内
commands[name] = fn
def default_func(): #默认函数
print('unknown command')
def dispatcher(): # 调度函数
while True:
cmd = input('>>')
if cmd.strip()=="": # 删除空格 同时,如果用户输入的是空字符串这退出循环
break
commands
全部评论 (0)
还没有任何评论哟~
