【16】Python文艺的三级菜单

简介:

优化low的三级菜单http://blog.51cto.com/000011211684/1980529,
以下内容是参考python学习视频整理。

#!/usr/bin/env python
#Author:Li QW

region_data={
      'china':{
         'beijing':{
            '昭阳区':['中手游','万家娱乐'],
            '五环内':['长城','故宫']
            },
         'nanjing':{
            '建邺区':['奥体中心','南京眼'],
            '鼓楼区':['南京师范','南艺']
            },
         'shenzhen':{
            '龙华新区':['百货','肠粉'],
            '福田区':['中康路','南京路']
         },
        },
      'USA':{
         '旧金山':{
                '1':['11','111'],
                '2':['22','222']
         },
         '硅谷':{
         },
         '纽约':{
            },
      }
}

level=[]
while True:
    for info in region_data:
        print(info)
    choice=input("Input choice >>> ")
    if choice == "b":
        if len(level)==0:break  #当列表为空就直接退出循环
        region_data=level[-1] #将父值,赋值给当前列表
        level.pop() ##记得删除(pop默认移除最后一个元素,并返回)
    if len(choice) ==0 or choice not in region_data :continue  #当输入值为空或者不存在,重新循环
    level.append(region_data)   #精华部分1:让记得老子是谁,方便退出。

region_data=region_data[choice] #精华部分2:把子菜单赋值给列表,方便进入下一层(记录当前位置,重新赋值给in












本文转自白羊IT51CTO博客,原文链接:http://blog.51cto.com/000011211684/2045855,如需转载请自行联系原作者

相关文章
|
3月前
|
C++ Java 容器
【Java每日一练】总目录(2023.3.11~5.18)共69篇
【Java每日一练】总目录(2023.3.11~5.18)共69篇
165 0
【Java每日一练】总目录(2023.3.11~5.18)共69篇
|
10月前
|
Python
【Python】多种方法实现打印系统菜单
【Python】多种方法实现打印系统菜单
99 0
|
11月前
|
Python
Python高级进阶#019 pyqt5菜单menu应用,新建多窗体
Python高级进阶#019 pyqt5菜单menu应用,新建多窗体
178 0
|
数据可视化 Python
python小玩意——点菜单程序
python小玩意——点菜单程序
python小玩意——点菜单程序
|
存储 Python 容器
Python各类题型题目(包括三级菜单)
Python各类题型题目(包括三级菜单)
174 0
|
Python
python Day1作业:三层菜单
输入信息三层全部正确,最后退出循环打印最终查询结果 点击(此处)折叠或打开 [t@bjb0541 python]$ ./day12.
767 0

热门文章

最新文章