三级菜单:
a.可依次进入各级菜单
b.可以动态选择各级菜单
[列表,字典]
#/usr/bin/python3
# -*- coding:utf-8 -*-
#定义字典
district_maps={
"陕西省":{"西安":["莲湖区","未央区","长安区"],"宝鸡":["陈仓区","渭滨区","金台区"],"咸阳":["秦都区","机场"]},
"河北省":{"保定":["xxx","xxxx","休息休息"],"唐山":["嘻嘻嘻","cscds","dcsc"],"ss":["cdcd","cdcdcd"]},
}
while
Python 编写三级菜单是一种常见的交互式程序设计方式,它为用户提供了一种逐级深入的探索数据结构的途径。在这个示例中,我们看到的是一个用于查询中国省份、城市及区县的三级菜单系统,使用了字典和嵌套循环来实现。
程序定义了一个字典 `district_maps`,其中键是省份名,值是另一个字典,该字典的键是城市名,对应的值是包含区县名称的列表。这个字典的结构如下:
```python
district_maps = {
"陕西省": {"西安": ["莲湖区", "未央区", "长安区"], "宝鸡": ["陈仓区", "渭滨区", "金台区"], "咸阳": ["秦都区", "机场"]},
"河北省": {"保定": ["xxx", "xxxx", "休息休息"], "唐山": ["嘻嘻嘻", "cscds", "dcsc"], "ss": ["cdcd", "cdcdcd"]}
}
```
接下来,程序通过一个无限循环实现了主菜单,让用户可以反复选择或退出。用户输入的省份名会被用来查找 `district_maps` 字典中的对应项。如果省份名有效,程序会进入第二级菜单,显示该省份包含的城市。用户再输入城市名,如果城市名有效,程序则进入第三级菜单,显示该城市的区县。
在每一级菜单中,都有一个判断语句检查用户的输入是否正确。如果用户输入 "q",程序会退出;如果输入 "b",程序会返回上一级菜单。如果输入无效,程序会提示重新输入。在退出或返回上一级时,都需要用户确认操作,增强了交互体验。
这个程序的核心逻辑在于利用 Python 的字典和列表数据结构,以及循环和条件判断语句。字典提供了快速查找和访问数据的能力,而列表则用于存储一系列相关数据。通过嵌套循环,我们可以方便地遍历这些数据结构,根据用户的选择提供相应的信息。
总结一下,这个Python三级菜单程序主要涉及以下知识点:
1. **字典(Dictionary)**:Python 的字典是一种关联数组,用于存储键值对。在这个例子中,字典用于组织省份、城市和区县的层级关系。
2. **列表(List)**:列表是Python中的序列数据类型,用于存储有序的元素。在这里,列表用于存储城市下的区县。
3. **循环(Loop)**:程序中的 `while` 循环用于控制菜单的迭代和用户输入的处理。
4. **条件判断(Conditional Statements)**:`if` 语句用于检查用户输入的有效性,并根据输入执行相应的操作。
5. **字典的查找与遍历**:通过字典的键查找对应的值,遍历字典和列表以获取和展示数据。
6. **用户输入(User Input)**:`input()` 函数用于接收用户的输入,作为菜单选择的依据。
7. **退出和返回机制**:使用 `break` 和 `exit()` 语句控制程序的退出和返回上级菜单。
这个程序展示了如何用 Python 实现一个简单的命令行交互式应用,为理解和实践 Python 的基础数据结构和控制流提供了很好的实例。