python三级菜单练习

需求:
可依次选择进入各子菜单
可从任意一层往回退到上一层
可从任意一层退出程序
 所需新知识点:列表、字典

 1 # -*- coding:utf-8 -*-
 2 # Author:Xiaorui
 3 # 需求:
 4 # 可依次选择进入各子菜单
 5 # 可从任意一层往回退到上一层
 6 # 可从任意一层退出程序
 7 # 所需新知识点:列表、字典
 8 menu = {
 9     ‘北京‘: {
10         ‘海淀‘: {
11             ‘五道口‘: {
12                 ‘soho‘: {},
13                 ‘网易‘: {},
14                 ‘google‘: {}
15             },
16             ‘中关村‘: {
17                 ‘爱奇艺‘: {},
18                 ‘汽车之家‘: {},
19                 ‘youku‘: {},
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     },
49     ‘山东‘: {},
50 }
51 place_menu = menu
52 last_place_layers = []  # 采用列表,目的是之后可以调用列表的pop()方法
53 while True:    # while死循环保证非用户退出就一直在循环中,且只使用一次while循环
54     for i in place_menu:
55         print(i)
56     choice = input("请输入地名:").strip()   # strip()方法除去输入俩侧空格
57     if not choice:     # 判断用户是否输入的已有地名
58         continue
59     else:
60         pass         # if..else语句完整,便于阅读
61     if choice in place_menu:   # 判断用户是否输入的已有地名
62         last_place_layers.append(place_menu)   # 运用append()方法保存操作前的一层
63         place_menu = place_menu[choice]    # 进入下一层
64         if not place_menu:    # 判断是否处在底层,if进行判断时字典空为假,所以此处用not
65             print("你已经处在底层,回到上层请输入b,退出请输入p!")
66         else:
67             pass
68     elif choice == "b" or choice == "B":  # 任意层可返回上一层
69         if len(last_place_layers) != 0:
70             place_menu = last_place_layers.pop()
71         else:
72             print("目前处于顶层!")
73     else:    # 任意层可退出
74         if choice == "p" or choice == "P":
75             break
76         else:
77             pass     # PEP8规范pass等不可结尾

原文地址:https://www.cnblogs.com/aidan/p/8544831.html

时间: 2024-08-06 11:04:42

python三级菜单练习的相关文章

Python 三级菜单

Python 三级菜单 需求 打印省.市.县三级菜单 可返回上一级 可随时退出程序 代码实现 1 menu = { 2 '北京':{ 3 '海淀':{ 4 '五道口':{ 5 'soho':{}, 6 '网易':{}, 7 'google':{} 8 }, 9 '中关村':{ 10 '爱奇艺':{}, 11 '汽车之家':{}, 12 'youku':{}, 13 }, 14 '上地':{ 15 '百度':{}, 16 }, 17 }, 18 '昌平':{ 19 '沙河':{ 20 '老男孩':

python三级菜单优化

python三级菜单优化,菜鸟版链接:http://www.cnblogs.com/xuyaping/p/6648170.html menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, '汽车之家':{}, 'youku':{}, }, '上地':{ '百度':{}, }, }, '昌平':{ '沙河':{ '老男孩':{}, '北航':{}, }, '天通苑':{}, '回龙观':

python 三级菜单 while循环三次,湖北省市-县-街道的选择,3个while的循环 -day2

python编写一个三级while的循环菜单 1.定义字典,字典里面嵌套字典,内嵌字典的值为列表. 思路: 湖北省的市:字典中的定义3个字典,用于存储 {序列-键:市名} shiqu_dir = {} {序列-键:县} xian_dir ={} {序列-键:街道} jiedao_dir = {} 函数将序列和键一一对应. for number,key in enumerate(Hbei_map.keys()) 获取序列键和市名存储到 市名字典 用一个列表 chose = [] 来存储所选择的市-

python三级菜单

需求: 编写三级菜单     1.菜单需求:         一级菜单:            北京                                  山西         二级菜单:    朝阳                昌平               长治           大同         三级菜单:三里屯    工体       沙河  西二旗       潞城  黎城     阳高县  左云县     2.任何一级都可以输入b返回上一级,输入q退出.    

Python 三级菜单与优化(一层循环嵌套)

优化的思路是使用单层循环嵌套完成三级菜单,这个优化思路我非常喜欢,我喜欢在编程的时候用最少的东西写出同样的效果,通常这样会绕来绕去,但非常有趣!!! 需求: 1.运行程序输出第一级菜单: 2.选择一级菜单某项,输出二级菜单,同理输出三级菜单: 3.让用户选择是否要退出: 4.有返回上一级菜单的功能: 多层循环嵌套: data = { 'A':{ "Aa":['Aa1','Aa2','Aa3'], "Ab":['Ab1','Ab2','Ab3'], "Ac&

python三级菜单例题

打印省.市.县三级菜单 可返回上一级 可随时退出程序 __author__ = "Alex Li" data = { '北京':{ "昌平":{ "沙河":["oldboy","test"], "天通苑":["链家地产","我爱我家"] }, "朝阳":{ "望京":["奔驰","

Python 三级菜单-字符编码和转码-集合的操作-文件的操作

三级菜单: menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, '汽车之家':{}, 'youku':{}, }, '上地':{ '百度':{}, }, }, '昌平':{ '沙河':{ '老男孩':{}, '北航':{}, }, '天通苑':{}, '回龙观':{}, }, '朝阳':{}, '东城':{}, }, '上海':{ '闵行':{ "人民广场":{ '炸鸡店

python三级菜单的实现

#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2017-05-20 2:43# @Author : wlgo2108# @Site : # @File : Menu01.py# @Software: PyCharm# @Email : [email protected] import reimport sys menu = { "M:主菜单":{ "L:登录管理":{ "LU:修改密码"

简单练习:Python三级菜单优化

1 menu = { 2 '北京':{ 3 '海淀':{ 4 '五道口':{ 5 'soho':{}, 6 '网易':{}, 7 'google':{} 8 }, 9 '中关村':{ 10 '爱奇艺':{}, 11 '汽车之家':{}, 12 'youku':{}, 13 }, 14 '上地':{ 15 '百度':{}, 16 }, 17 }, 18 '昌平':{ 19 '沙河':{ 20 '北航':{}, 21 }, 22 '天通苑':{}, 23 '回龙观':{}, 24 }, 25 '朝阳