需求:
可依次选择进入下一层;
可从任意一层返回上一层;
可从任意一层退出程序。
摘于“老男孩儿网上课程作业”
多级菜单简单的思路就是多级循环,在while里面嵌套while循环,但是在写的过程中就会发现很多代码都是重复写,而且如果遇到100级的菜单就要写100级的循环,很不方便。
如何将代码尽量简化并且可以适用于N级菜单呢,其实可以用到list,将每一级菜单动态的存入到list中,要打印的时候再从list中取出就会方便很多。
以下是代码部分:
lst = [] while True: for i in menu: print(i) choice = input('输入您要进入省/市...(输入R:返回上一级;输入其它或Q:退出):') if choice in menu: lst.append(menu) menu = menu[choice] elif choice == 'R': if len(lst) == 1: menu = lst[0] else: menu = lst.pop() else: break需要注意的是这个功能不支持一进入程序就输入R
本文介绍如何用Python通过列表动态实现多级菜单,解决传统递归或循环方式可能导致的代码冗余问题。在需求中,用户可以任意层级进出菜单,并能从任意层退出程序。通过将菜单项存储在列表中,简化了代码并提高了灵活性。





