[Python]三级联动查询2

# 以字典的形式 保存相关省市数据
menu = {
    '北京': {
        '朝阳': {
            '国贸': {
                'CICC': {},
                'HP': {},
                '银行': {},
                'CCTV': {}
            },
            '望京': {
                '陌陌': {},
                '奔驰': {},
                '360': {}
            },
            '三里屯': {
                '优衣库': {},
                'apple': {}
            }
        },
        '昌平': {
            '沙河': {
                '老男孩': {},
                'old boy': {}
            },
            '天通苑': {
                '链家': {},
                '我爱我家': {}
            },
            '回龙观': {}
        },
        '三里屯': {
            '五道口': {
                '谷歌': {},
                '百度': {},
                '搜狐': {}
            }
        }
    },
    '上海': {
        '浦东': {
            '陆家嘴': {
                'CICC': {},
                '高盛': {},
                '摩根': {}
            },
            '外滩': {}
        },
        '闵行': {},
        '静安': {}
    },
    '山东': {
        '济南': {},
        '德州': {
            '乐龄': {},
            '玉城': {},
            '聊城': {}
        },
        '青岛': {}
    }
}
# 可以一层一层的进入所有曾,
# 可以再任意曾退出
# 可以在每一层返回上一层
# 每层的循环 来寻找想要的信息
back_flag = False  # 用于返回上一层
exit_flag = False  # 用于退出整个程序
while not back_flag and not exit_flag:
    for key in menu:
        print(key)
    choice = input(">>").strip()
    if choice in menu:
        while not back_flag and not exit_flag:  # 让程序停在第二层
            for key2 in menu[choice]:
                print(key2)
            choice2 = input('>>').strip()
            if choice2 == 'q':
                back_flag = True
            if choice2 in menu[choice]:
                while not back_flag and not exit_flag:
                    for key3 in menu[choice][choice2]:
                        print(key3)
                    choice3 = input('>>').strip()
                    if choice3 == 'q':
                        back_flag = True
                    if choice3 in menu[choice][choice2]:
                        while not back_flag and not exit_flag:
                            for key4 in menu[choice][choice2][choice3]:
                                print(key4)
                            choice4 = input('>>').strip()
                            if choice4 == 'q':
                                back_flag = True
                            if choice4 == 'b':
                                exit_flag = True

                        else:
                            back_flag = False
                else:
                    back_flag = False
        else:
            back_flag = False

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值