1. menu={
  2. '北京':{
  3. '海淀':{
  4. '五道口':{
  5. '搜狐':{},
  6. '网易':{},
  7. 'Google':{},
  8. },
  9. '中关村':{
  10. '爱奇艺':{},
  11. '汽车之家':{},
  12. '优酷':{},
  13. },
  14. '上地':{
  15. '百度':{},
  16. },
  17. },
  18. '昌平':{
  19. '沙河':{
  20. '老男孩':{},
  21. '北航':{},
  22. },
  23. '天通苑': {},
  24. '回龙观': {},
  25. },
  26. '朝阳':{},
  27. '东城':{}
  28. },
  29. '上海':{
  30. '闵行':{
  31. '人民广场':{
  32. '炸鸡店':{},
  33. },
  34. },
  35. '闸北':{
  36. '火车站':{
  37. '携程':{},
  38. },
  39. },
  40. '浦东':{}
  41. },
  42. '山东':{
  43. '德州':{},
  44. '青岛':{},
  45. '济南':{}
  46. }
  47. }
  48. exit_flag=False
  49.  
  50. while not exit_flag:
  51. for i in menu:
  52. print(i)
  53.  
  54. choice=input('>>选择进入1:')
  55. if choice in menu:
  56. while not exit_flag:
  57. for i2 in menu[choice]:
  58. print('\t',i2)
  59. choice2= input('>>选择进入2:')
  60. if choice2 in menu[choice]:
  61. while not exit_flag:
  62. for i3 in menu[choice][choice2]:
  63. print('\t\t', i3)
  64. choice3 = input('>>选择进入3:')
  65. if choice3 in menu[choice][choice2]:
  66. # while not exit_flag:
  67. # for i4 in menu[choice][choice2][choice3]:
  68. # print('\t\t',i4)
  69. # choice4=input('最后一层,按b返回>>:')
  70. # if choice4=='b':
  71. # break
  72. # elif choice4=='q':
  73. # exit_flag = True
  74. for i4 in menu[choice][choice2][choice3]:
  75. print('\t\t', i4)
  76. choice4=input('最后一层,按b返回>>:')
  77. if choice4 == 'b':
  78. pass#表示什么也不做,仅仅是为了不出错,是个占位符
  79. elif choice4=='q':
  80. exit_flag=True
  81. # 以上7行可以有以上注释的8行进行替换,效果相同
  82. if choice3 == 'b':
  83. break
  84. elif choice3 == 'q':
  85. exit_flag = True
  86. if choice2 == 'b':
  87. break
  88. elif choice2 == 'q':
  89. exit_flag = True

  

python_29_三级菜单的更多相关文章

  1. python_29_三级菜单2

    menu={'河北':{ '石家庄':{ '平山':{ '县城':{}, '寨北':{}, '苏家庄':{}, }, '灵寿':{}, '鹿泉':{} }, }, '北京':{ '昌平':{ '沙河' ...

  2. python学习笔记(字符串操作、字典操作、三级菜单实例)

    字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...

  3. css三级菜单效果

    一个简单实用的css三级菜单效果 <!doctype html> <html> <head> <meta charset="utf-8"& ...

  4. python成长之路-----day1-----作业(登录程序和三级菜单)

    作业: 作业1:用户登录 1)程序说明: a.用户输入密码验证成功然后打印欢迎信息 b.如果密码错误,用户登录失败,提示用户,密码错误 c.用户输入密码错误3次,则用户锁定 d.当用户多次输入不存在的 ...

  5. Python之路 day2 字典练习题之 三级菜单

    #Author:ersa ''' 程序: 三级菜单 要求: 打印省.市.县三级菜单 可返回上一级 可随时退出程序 ''' menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{ ...

  6. python3 三级菜单

    python版本3.5 功能: 1.程序执行显示一级菜单,输入内容进入二级菜单: 2.进入二级菜单后,输入二级菜单内容,进入三级菜单:输入b返回一级菜单: 3.进入三级菜单后,输入b返回二级菜单. # ...

  7. 用jQuery做一个三级菜单,鼠标移动到二级菜单的选项上,然后再迅速离开后,当鼠标再移动到该一级菜单或其他二级菜单选项,三级菜单也会显示。

    用jQuery做一个三级菜单,鼠标移动到二级菜单的选项上,然后再迅速离开后,当鼠标再移动到该一级菜单或其他二级菜单选项,三级菜单也会显示. 原因:在为一个元素绑定hover事件之后,用户把光标移入元素 ...

  8. day1作业--三级菜单

    作业概述: 写一个三级菜单 实现如下功能: (1)可依次选择进入各子菜单 (2)在每一级按“b”都可以返回上一级,按“q"都可以退出 流程图: readme: 简介: three_menu. ...

  9. python打怪之路【第三篇】:利用Python实现三级菜单

    程序: 利用Python实现三级菜单 要求: 打印省.市.县三级菜单 可返回上一级 可随时退出程序 coding: menu = { '北京':{ '朝阳':{ '国贸':{ 'CICC':{}, ' ...

随机推荐

  1. 如何使用JDBC Request跨数据库查询后引用查询的结果作为下一个JDBC Request的入参

    [前言] 今天来给大家介绍下如何使用JDBC Request跨数据库查询后引用查询的结果作为下一个JDBC Request的入参! 因为我现在所测的系统模块中部分表在不同的数据库中,所以在用JDBC ...

  2. JAVA String.format()的使用

    常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重 ...

  3. springBoot2.0 配置shiro实现权限管理

    一.前言 基于上一篇springBoot2.0 配置 mybatis+mybatisPlus+redis 这一篇加入shiro实现权限管理 二.shiro介绍 2.1 功能特点 Shiro 包含 10 ...

  4. 洛谷P1505 [国家集训队]旅游

    题目描述 \(Ray\) 乐忠于旅游,这次他来到了\(T\) 城.\(T\) 城是一个水上城市,一共有 \(N\) 个景点,有些景点之间会用一座桥连接.为了方便游客到达每个景点但又为了节约成本,\(T ...

  5. input 上传文件的判断

    <html> <head> <meta charset='utf-8'> <meta name="viewport" content=&q ...

  6. 关于webpack的版本导致的postcss-loader的问题

    来源自问题 https://segmentfault.com/q/1010000006987956 !!!发现这解决方案还是不能用,估计是webpack又更新了一轮,请看看下下方的答案 某个版本web ...

  7. 判断是pc端登录还是移动端登录

    java判断 https://blog.csdn.net/qq_32657581/article/details/71405838 https://zhidao.baidu.com/question/ ...

  8. chapter05_20180330

    // 5.7 主构造器// 主构造器的参数直接旋转在类名之后class Person57(val name: String, val age: Int) { // 上边()中的内容就是主构造器的参数} ...

  9. Hystrix使用小结

    通过服务熔断实现服务降级 @HystrixCommand(fallbackMethod = "reliable", commandProperties = { @HystrixPr ...

  10. poj3233(矩阵快速幂的和)

    题目链接:http://poj.org/problem?id=3233 Matrix Power Series Time Limit: 3000MS   Memory Limit: 131072K T ...