python 写三级菜单
2015-12-11 17:57
423 查看
# -*- coding: utf-8 -*- __author__ = 'am_mm_NO.1' import re memu = { "东北":{ "吉林省":{ "吉林市":['吉林市1','吉林市2'], "长春":['长春1','长春2'],}, "辽宁省":{ "沈阳":['沈阳1','沈阳2','沈阳3'], "大连":['大连1','大连2'], }, }, '华北':{ '河北省':{ '廊坊':['廊坊1','廊坊2'], '保定':['保定1','保定2'], }, '内蒙古':{ '呼和浩特':['呼和浩特1','呼和浩特2','呼和浩特3'], '包头':['包头1','包头2'] }, }, } flag = True while flag: # 全局变量,设置跳出整个循环 for i,v in enumerate(memu.keys()): #遍历第一层字典 print i,v #打印出第一层key,value num_1=raw_input("请输入一级菜单号,按q退出:").strip() #接受键盘输入 if num_1 == 'q': flag = False break if num_1.isdigit(): num_1=int(num_1) if num_1<= len(memu): key_1 = memu.keys()[num_1] while flag: for i1,v1 in enumerate(memu[key_1]): print i1,v1 num_2 = raw_input("请输入二级菜单号,按q退出,b返回:").strip() if num_2 == 'q': flag = False break if num_2 == 'b': break if num_2.isdigit(): num_2 = int(num_2) if num_2 <= len(memu[key_1]): key_2 = memu[key_1].keys()[num_2] while flag: for i2,v2 in enumerate(memu[key_1][key_2]): print i2 ,v2 num_3 = raw_input("请输入三级菜单号,按q退出,b返回:").strip() if num_3 == 'q': flag = False break if num_3 == 'b': break if num_3.isdigit(): num_3 = int(num_3) if num_3 <= len(memu[key_1][key_2]): key_3 = memu[key_1][key_2].keys()[num_3] while flag: for i3,v3 in enumerate(memu[key_1][key_2][key_3]): print i3,v3 num_4 = raw_input("按q退出,b返回:").strip() if num_4 == 'q': flag = False break if num_4 == 'b': break
相关文章推荐
- python 读取文件指定某行
- Python中web.py运行后窗口显示中文
- Python多线程学习
- [Python]ctypes+struct实现类c的结构化数据串行处理
- Python模板库Mako的用法
- Python函数练习:冒泡算法+快速排序(二分法)
- Python中web.py session使用,解决EOFError
- Python实现各种排序算法的代码示例总结
- python小记--lambda 装饰器 max(min)的key回调函数 sorted
- python property的用法
- python全局可变变量的坑
- 第一个UI脚本--python+selenium
- Python模板库Mako的语法
- python异常处理
- 用Python抢过年的火车票
- python ftp 上传、下载文件
- python 10 min系列三之小爬虫(一)
- 【Python】import class/import module
- 2:numpy---ndarray
- PC和树莓派socket通信 控制LED