PYthon 完成简易的三级菜单

1. 可以一层一层的进入到所有层 ;
2. 可以在每层返回上一层 ;
3. 可以在任意层回退上一层或退出'b/q';

参考:https://www.cnblogs.com/phenomzh/p/6250672.html

这道题难住我的地方是:建立字典与列表。 开始套了太多,问题百出。

#!/usr/bin/env python
# -*-Coding:UTF-8 -*-
# Author:Jason
#三级菜单检索演示
#依次进入菜单
#中途直接退出或返回
import sys

#__author__ = 'lierl'
city_menu={'辽宁省':{'沈阳市': ['和平区','沈河区','皇姑区','铁西区'],
                    '大连市': ['甘井子区','西岗区','沙河口区','中山区'],
                    '鞍山市': ['铁西区','铁东区','立山区','千山区'],
                    '营口市': ['西市区','站前区','老边区']},

          '吉林省':{'吉林市':['昌邑区','船营区','丰满区'],
                   '长春市':['宽城区','绿园区','朝阳区','南关区'],
                   '四平市':['铁西区','铁东区']}
          }

'''
province='辽宁省'
city='沈阳市'
city2='大连市'
district='和平区'
print(city_menu)
print(city_menu[province])
print(city_menu[province][city])

print(city_menu['吉林省'])
print(city_menu[province][city2])
'''

while True:
    for i in city_menu:
        print('three floors menu show:',i)
    choice = input('输入相应省份>>>或者‘q’退出:').strip()   #用户输入省份
    if choice in city_menu:
        while True:
            for i1 in city_menu[choice]:
                print('\t',i1)
            choice1=input('输入相应市>>>或者‘b’返回上层,‘q’退出演示:')
            if choice1 in city_menu[choice]:
                while True:
                    for i2 in city_menu[choice][choice1]:
                        print('\t\t',i2)
                    choice3=input('输入相应市>>>或者‘b’返回上层,‘q’退出演示:')
                    if choice3=='b':
                        break
                    elif choice3=='q':
                        sys.exit()
            elif choice1 =='b':
                break
            else:
                sys.exit()
    elif choice == 'b'or'q':
        sys.exit()

  

posted @ 2020-05-28 18:27  旋转的小陀螺  阅读(21)  评论(1)    收藏  举报