我正在迈出第一步.我看到我们没有switch case语句,所以我想你们在python中实现一个文本菜单?
谢谢
你可能会这样做:
def action1(): pass # put a function here def action2(): pass # blah blah def action3(): pass # and so on def no_such_action(): pass # print a message indicating there's no such action def main(): actions = {"foo": action1, "bar": action2, "baz": action3} while True: print_menu() selection = raw_input("Your selection: ") if "quit" == selection: return toDo = actions.get(selection, no_such_action) toDo() if __name__ == "__main__": main()
这会将所有可能的操作函数放入字典中,键是您输入的用于运行函数的键.然后它从列表中检索动作输入动作,除非输入动作不存在,在这种情况下它检索no_such_action.
在您基本了解其工作原理后,如果您正在考虑使用Serious Business命令行类型的应用程序,我将查看命令行应用程序的cmd
框架.
一般来说,如果elif很好,但如果你有很多案件,请考虑使用dict.
actions = {1: doSomething, 2: doSomethingElse} actions.get(n, doDefaultThing)()