首页 > 其他 > 详细

三级菜单

时间:2019-03-17 10:32:16      阅读:207      评论:0      收藏:0      [点我收藏+]
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 l:
    for key in l[-1]:print(key)
    k = input(‘input>>‘).strip()
    if key in l[-1].key() and l[-1][key]:
	l.append(l[-1][key])
    elif k == ‘b‘:
	l.pop()
    elif k == ‘q‘:
	break
    else:continue

  

三级菜单

原文:https://www.cnblogs.com/eternity-twinkle/p/10545276.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!