python编写三级菜单

三级菜单:
a.可依次进入各级菜单
b.可以动态选择各级菜单
[列表,字典]

#/usr/bin/python3
# -*- coding:utf-8 -*-
#定义字典
district_maps={
             "陕西省":{"西安":["莲湖区","未央区","长安区"],"宝鸡":["陈仓区","渭滨区","金台区"],"咸阳":["秦都区","机场"]},
             "河北省":{"保定":["xxx","xxxx","休息休息"],"唐山":["嘻嘻嘻","cscds","dcsc"],"ss":["cdcd","cdcdcd"]},
}
while True:
    print ("----------中国省份查询--------------")
    for a in district_maps:     #将字典中的key值赋给a,打印a
        print(a)
    print ("-----------------------------")
    while True:
        district_name =input("请输入要查看的省份:") #将省份名赋值给district_name
        if district_name in district_maps:    #判断district_name是否在字典中
           shengfen_name = district_maps[district_name] #使用输入的信息作为key,取出市信息,存在字典 
           print ("-------------%s所包含的城市-------------" % district_name)  #打印所输出的省的城市
           for b in shengfen_name: #遍历列表,取出城市名
               print(b)
           print("---------------------------------")
           city_name=input("请输入要查看的城市:") #输入想要查看的城市
           if city_name in shengfen_name:  #判断城市名是否在省名列表中
              qu_name = district_maps[district_name][city_name]  #取出城市中的区,存放在列表
              print("------------------%s所包含的区-------------------------" % city_name)
              for c in qu_name: #遍历列表,取出区名
                  print (c)
              print ("----------------------------------")
           if city_name == "q": 
              exit("--------谢谢使用---------------")
           if city_name == "b":
              break
           if city_name not in shengfen_name:
              print ("输入有误,请重新输入")
              break
           last_stage = input("请问返回上级(b)还是退出(q):")
           if last_stage== "q":
              exit("--------谢谢使用---------------")
           elif last_stage== "b":
              print("-------------------------------")
              break
           elif last_stage != "q"or"b":
              exit("-------------输入有误,谢谢使用-----------")
        if district_name == "q":
            exit ("-----------谢谢使用----------------")
        if district_name not in district_maps:
            print("输入有误,请重新输入")

执行结果在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值