题目
运用python中的dict
等知识编写一个三级菜单,要求如下:
- 任意的三级菜单
- 可在每级菜单中返回或退出
流程图
主要功能
数据存储
用python字典的嵌套来存储菜单数据;最后一级菜单最好用列表存储,便于统一用for
循环打印(若用字符串则会循环打印单个字母)。
data = {
'China': {
'shandong': {'jining':['606'], 'jinan':['friends']},
'shanghai': {'yangpu':['USST'], 'pudong':['mingzhu']}
},
'America': {
'Alaska': ['阿拉斯加'],
'California': ['加利福尼亚']
}
}
显示菜单
显示菜单主要用for
循环打印字典里的key
参数。
for i in data:
print(i)
主框架
主要有while
循环和多层if
判断。
while True:
print(menu)
choice = input('(b返回,q退出)请选择菜单:')
if choice in data:
next menu...
elif choice == 'b':
break
elif choice == 'q':
exit()
知识丶总结
- 在数据存储的字典中,最后一级菜单最好用列表存储,便于统一用
for
循环打印(若用字符串则会循环打印单个字母); - 用
a in b
判断a是否在b内; - 在processon中完整流程图画不开,画了其中一层菜单……
这个三级菜单是对字典嵌套的练习,在编程过程中也发现了很多细节操作。当然在实际应用中肯定不会这么写多级菜单的——因为有太多的重复工作了。
源代码
https://github.com/artintZ/python/blob/master/day2/3_level_menu.py