zoukankan      html  css  js  c++  java
  • 关于三级的菜单的尝试

    {
        '安徽':{
            "马鞍山":{
                "秀山区":["地产","草地"],
                "雨山区":["代码","程序员"]
                     },
            "宣城":{
                "泾县":["小山","大山"],
                "和县":{"桃花","山区"},
                "郎溪县":{"地域","人文"},
                    },
            "芜湖":{
            "芜湖县":["小吃","东西"],
            "无为县":["无畏","繁荣"]
            "南岭县":["梨花","杏花"]
            },
                },
        "上海":{
            "闵行":{},
            "浦东":{},
            "宝山":{}
              },
        '浙江':{
            "杭州":{},
            "绍兴":{},
            "义乌":{},
              },
    }

    以上是文件内容,保存为文本文档

     1 import sys
     2 
     3 with open("weizhi.txt") as file:
     4     f = file.read()
     5 data = eval(f)
     6 
     7 def list(): #展示第一层数据
     8     for key in data.keys():
     9         print(key)
    10 
    11 def choose_one(choose1):
    12     while choose1 != 'q':
    13         global one
    14         one = choose1
    15         if choose1 in data:
    16             for key2 in data[one]:
    17                 print(key2)
    18             choose_two(input("输入第二级菜单"))
    19             break
    20         elif choose1 == "b":
    21             print("这为一级菜单无法返回")
    22             break
    23         else:
    24             error = input("你输入错误,请重新输入")
    25             if error == "q":
    26                 break
    27             else:
    28                 choose_one(error)
    29     else:
    30         sys.exit()
    31 
    32 
    33 def choose_two(choose2):
    34     while choose2 != 'q':
    35         global two
    36         two = choose2
    37         if choose2 in data[one]:
    38             for key3 in data[one][two].keys():
    39                 print(key3)
    40             choose_three(input("请输入第三级菜单"))
    41             break
    42         elif two == 'b':
    43             choose_one(one)
    44             break
    45         else:
    46             error = input("输入错误,重新输入")
    47             if error == 'q':
    48              #   sys.exit()
    49                 break
    50             elif error == 'b':
    51                 choose_one()
    52             else:
    53                 choose_two(error)
    54     else:
    55         sys.exit()
    56 
    57 
    58 def choose_three(choose3):
    59     while choose3 != 'q':
    60         global three
    61         three = choose3
    62         if three in data[one][two]:
    63             for key4 in data[one][two][three]:
    64                 print(key4)
    65             choose_four(input("输入字母"))
    66             break
    67         elif three == 'b':
    68             choose_two(two)
    69             break
    70         else:
    71             error = input("重新输入")
    72             if error == 'q':
    73                 break
    74             else:
    75                 choose_three(error)
    76     else:
    77         sys.exit()
    78 
    79 
    80 def choose_four(choose4):
    81     if choose4 == 'b':
    82         choose_three(three)
    83     elif choose4 == 'q':
    84         sys.exit()
    85     else:
    86         print("你输入错误: ")
    87         think = input("是否想继续(y/n): ")
    88         if think == 'y':
    89             list()
    90             choose1 = input("一级菜单: ")
    91             choose_one(choose1)
    92         else:
    93             sys.exit()
    94 
    95 
    96 print("q表示推出,b表示返回上一级菜单")
    97 list()
    98 choose_one(input("请输入一级菜单"))
  • 相关阅读:
    微信扫码
    vue h5公众号支付
    vue h5支付宝支付
    vue PDF预览
    vue 中AES加密
    vue 动态路由配置
    移动端调试工具
    Ajax工作原理
    yahoo军规
    Flex 布局教程
  • 原文地址:https://www.cnblogs.com/tianqianlan/p/9403712.html
Copyright © 2011-2022 走看看