zoukankan      html  css  js  c++  java
  • 三级菜单

    menu = {
    '北京':{
    '海淀':{
    '五道口':{
    'soho':{},
    '网易':{},
    'google':{}
    },
    '中关村':{
    '爱奇艺':{},
    '汽车之家':{},
    'youku':{},
    },
    '上地':{
    '百度':{},
    },
    },
    '昌平':{
    '沙河':{
    '老男孩':{},
    '北航':{},
    },
    '天通苑':{},
    '回龙观':{},
    },
    '朝阳':{},
    '东城':{},
    },
    '上海':{
    '闵行':{
    "人民广场":{
    '炸鸡店':{}
    }
    },
    '闸北':{
    '火车站':{
    '携程':{}
    }
    },
    '浦东':{},
    },
    '山东':{},
    }
    #递归实现
    def threeLM(dic):
    while True:
    for k in dic:print(k)
    key = input('input>> ').strip()
    if key == 'b' or key == 'q':return key
    elif key in dic.keys() and dic[key]:
    ret = threeLM(dic[key])
    if ret == 'q':return 'q'
    elif (not dic.get(key)) or (not dic[key]):
    continue
    threeLM(menu)

    #堆栈实现

    l = [menu]
    while True:
    for key in l[-1]:print(key)
    k = input('input>> ').strip()
    if k in l[-1].keys() and l[-1][k]:
    l.append(l[-1][k])
    elif k == 'b':
    l.pop()
    elif k == 'q':
    break
  • 相关阅读:
    js 进阶笔记
    Move Zeroes
    笔记
    前端笔记
    PAI-AutoLearning 图像分类使用教程
    Redis Key过期通知
    Ubuntu 安装配置 JDK+Tomcat+Nginx
    Linux常用指令总结
    使用Openssl创建证书
    Python 操作Excel
  • 原文地址:https://www.cnblogs.com/Murraya/p/11068971.html
Copyright © 2011-2022 走看看