python 基础之三级菜单(dict 的用法)

'''三级菜单能够随时退出,返回上一菜单'''date = {    '北京':{    '东城区':{        '安定门街道':{'国子监','鼓楼和钟楼'},        '北新桥街道':{'雍和宫','梁启超故居'}    },    '西城区':{        '西长安街街道':{'西单','人民大会堂'},        '新街口街道':{'什刹海','广化寺'}    }},    '上海':{    '黄浦区':{        '南京东路街道':{'人民广场','上海音乐厅'}    },    '徐汇区':'天平路街道'    }}exit = Falsewhile not exit:    # 打印第一层列表    for i in date:        print(i)    choice = input('选择进入:')    #判断输入的内容是不是第一层的key值    if choice in date:        while not exit:            #打印第二层列表            for i2 in date[choice]:                print('\t',i2)            choice2 = input('按n建返回上一层,q建退出\n选择进入:')            # 判断输入的内容是不是第二层的key值            if choice2 in date[choice]:                while not exit:                    # 打印第三层列表                    for i3 in date[choice][choice2]:                        print('\t\t',i3)                    choice3 = input('按n建返回上一层,q建退出\n选择进入:')                    # 判断输入的内容是不是第三层的key值                    if choice3 in date[choice][choice2]:                        # 打印第四层列表                        for i4 in date[choice][choice2][choice3]:                            print('\t\t\t',i4)                        choice4 = input('已经是最后一层,按q回到退出,任意键回到上一层:')                        if choice4 == 'q':                            #不知足whlir循环条件,跳出该循环                            exit = True                        else:                            #占位符,不作任何操做,同什么不输入同样,但这样系统不报错                            pass                    if choice3 == 'q':                        exit = True                    elif choice3 =='n':                        break            if choice2 == 'q':                exit = True            elif choice2 == 'n':                break
相关文章
相关标签/搜索