zoukankan      html  css  js  c++  java
  • 四级菜单实现(Python)

    menu_dict = {
    '山东' : {
    '青岛' : {
    '四方':{'兴隆路','平安路','杭州路'},
    '黄岛':{},
    '崂山':{}
    },
    '济南' : {
    '历城':{},
    '槐荫':{},
    '高新':{}
    },
    },
    '江苏' : {
    '苏州' : {
    '沧浪':{},
    '相城':{},
    '平江':{}
    },
    '南京' : {
    '白下':{},
    '秦淮':{},
    '浦口':{}
    }
    }
    }

    current_layer = menu_dict
    parent_layers = []#把不同层级的字典保存在列表中(列表中嵌套字典)[menu_dict,menu_dict[省],。。。。],到最后一层的时候列表是下面这个样子
    #parent_layers[0]={'山东': {'青岛': {'四方': {'杭州路', '兴隆路', '平安路'}, '黄岛': {}, '崂山': {}}, '济南': {'历城': {}, '槐荫': {}, '高新': {}}}, '江苏': {'苏州': {'沧浪': {}, '相城': {}, '平江': {}}, '南京': {'白下': {}, '秦淮': {}, '浦口': {}}}}
    #parent_layers[1]={'青岛': {'四方': {'杭州路', '兴隆路', '平安路'}, '黄岛': {}, '崂山': {}}, '济南': {'历城': {}, '槐荫': {}, '高新': {}}}
    #parent_layers[2]={'四方': {'杭州路', '兴隆路', '平安路'}, '黄岛': {}, '崂山': {}}while True:
        for key in current_layer:
    print(key)
    choice = input(">>:").strip()
    if len(choice) == 0:
    continue
    if choice in current_layer:
    parent_layers.append(current_layer)

    current_layer = current_layer[choice]
    elif choice =='b':
    if parent_layers:
    current_layer = parent_layers.pop()
    else:
    print("无此项")
  • 相关阅读:
    MFC中文件的查找、创建、打开、读写等
    使用DOS比较两个txt文件的差异
    HDU
    LIS(两种方法求最长上升子序列)
    7-17 奥运排行榜 (25 分)
    区间DP
    HDU-1864&&HDU-2602(01背包问题)
    HDU-5968异或密码
    Maximum Value(unique函数,lower_bound()函数,upper_bound()函数的使用)
    博弈结论记录
  • 原文地址:https://www.cnblogs.com/johnny1024/p/8213949.html
Copyright © 2011-2022 走看看