• 练习-三级菜单


    zunyi = ['红花岗', '汇川', '遵义']
    liupanshui = ['钟山', '六枝特', '水城']
    guiyang = ['南明', '云岩', '花溪']
    guizhou = {'1:贵阳': guiyang, '2:六盘水': liupanshui, '3:遵义': zunyi}
    
    guilin = ['秀峰', '叠彩', '象山']
    liuzhou = ['城中', '鱼峰', '柳南']
    nanning = ['兴宁', '青秀', '江南']
    guangxi = {'1.南宁': nanning, '2.柳州': liuzhou, '2.桂林': guilin}
    
    shenzhen = ['罗湖', '福田', '南山']
    shaoguan = ['武江', '浈江', '曲江']
    guangzhou = ['荔湾', '越秀', '海珠']
    guangdong = {'1.广州': guangzhou, '2.韶关': shaoguan, '3.深圳': shenzhen}
    
    # 省级字典
    Provinces = {'1:贵州': guizhou, '2:广西': guangxi, '3:广东': guangdong}
    
    # 省和市是字典,方便显示名称,区级因为区是第三级,下面不需要再分级,所有用列表
    
    # 显示省级,然后进入循环
    for i in Provinces:
        print(i)
    while True:  # 省级输入循环
        num = input('Select Provinces print City:')
        # 先判断是否退出
        if num == "b":
            break
        elif num == 'q':
            exit()
        elif num.isdigit() and int(num) > 0 and int(num) < 4:  # 判断输入是否有效
            # 先获取省级字典所有key,转换成列表,然后根据列表索引找到市级key
            p_city = list(Provinces.keys())[int(num) - 1]
            for m in Provinces[p_city]:  # 显示市级
                print(m)
            while True:  # 市级输入循环
                num = input('Select City print Region:')
                # 先判断是否退出
                if num == "b":
                    # 如果退出市级,显示省级名称
                    for i in Provinces:
                        print(i)
                    break
                elif num == 'q':
                    exit()
                elif num.isdigit() and int(num) > 0 and int(num) < 4:  # 判断输入是否有效
                    # 先获取市级字典所有key,转换成列表,然后根据列表索引找到区级key
                    p2_city = list(Provinces[p_city].keys())[int(num) - 1]
                    for p in Provinces[p_city][p2_city]:  # 显示区级
                        print(p)
                    while True:  # 区级输入循环
                        num = input('B:return / Q:quit :')
                        if num == "b":
                            for m in Provinces[p_city]:
                                print(m)
                            break
                        elif num == 'q':
                            exit()
                        else:
                            print('input error')
                else:
                    print('input error')
        else:
            print('input error')
  • 相关阅读:
    【Azure 应用服务】App Service For Windows 环境中部署Python站点后,如何继续访问静态资源文件呢(Serving Static Files)?
    Go语言基础之函数参数
    Go语言基础之函数定义
    Go语言基础之map
    Go语言基础之切片
    Go语言基础之数组
    Go中nil的定义
    复合数据类型介绍
    Go语言基础之流程控制goto
    Go语言基础之流程控制switch分支
  • 原文地址:https://www.cnblogs.com/xh4528/p/6497753.html
Copyright © 2020-2023  润新知