1、三级菜单

china_ditie = {
"北京": {
"一号线": ["四惠", "大望路", "天安门", "西单"],

"二号线": ["北京站", "朝阳门", "东直门", "西直门"],

"三号线": ["国贸", "三元桥", "知春路", "巴沟"]

},
"上海": {
"四号线": ["徐家汇", "人民广场", "延长路", "共康路", "呼兰路"],

"五号线": ["东昌路", "静安寺", "江苏路", "虹桥火车站"],

"六号线": ["宝山路", "赤峰路", "曹阳路", "虹桥路", "宜山路"]

},
"广州": {
"七号线": ["东山口", "农讲所", "烈士陵园", "公园前", "体育西路"],

"八号线": ["黄边", "纪念堂", "三元里", "白云公园"],

"九号线": ["沙河顶", "北京路", "一德路", "文化公园"]

},
"深圳": {
"一号线": ["高新园", "桃园", "白石洲", "华侨城"],

"四号线": ["白石龙", "明乐", "少年宫", "红山"],

"五号线": ["大学城", "兴东", "西里", "深圳北站"]

},

}#程序开始

完美实现

def threelm(dic):
while True:
for k in dic:
print(k)
key=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 china_ditie = {
"北京": {
"一号线": ["四惠", "大望路", "天安门", "西单"], "二号线": ["北京站", "朝阳门", "东直门", "西直门"], "三号线": ["国贸", "三元桥", "知春路", "巴沟"] },
"上海": {
"四号线": ["徐家汇", "人民广场", "延长路", "共康路", "呼兰路"], "五号线": ["东昌路", "静安寺", "江苏路", "虹桥火车站"], "六号线": ["宝山路", "赤峰路", "曹阳路", "虹桥路", "宜山路"] },
"广州": {
"七号线": ["东山口", "农讲所", "烈士陵园", "公园前", "体育西路"], "八号线": ["黄边", "纪念堂", "三元里", "白云公园"], "九号线": ["沙河顶", "北京路", "一德路", "文化公园"] },
"深圳": {
"一号线": ["高新园", "桃园", "白石洲", "华侨城"], "四号线": ["白石龙", "明乐", "少年宫", "红山"], "五号线": ["大学城", "兴东", "西里", "深圳北站"] }, }#
print(threelm(china_ditie))

python练习题-day21的更多相关文章

  1. Python练习题 028:求3*3矩阵对角线数字之和

    [Python练习题 028] 求一个3*3矩阵对角线元素之和 ----------------------------------------------------- 这题解倒是解出来了,但总觉得 ...

  2. Python练习题 027:对10个数字进行排序

    [Python练习题 027] 对10个数字进行排序 --------------------------------------------- 这题没什么好说的,用 str.split(' ') 获 ...

  3. Python练习题 026:求100以内的素数

    [Python练习题 026] 求100以内的素数. ------------------------------------------------- 奇怪,求解素数的题,之前不是做过了吗?难道是想 ...

  4. Python练习题 025:判断回文数

    [Python练习题 025] 一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. ---------------------------------------- ...

  5. Python练习题 024:求位数及逆序打印

    [Python练习题 024] 给一个不多于5位的正整数,要求:一.求它是几位数,二.逆序打印出各位数字. ---------------------------------------------- ...

  6. Python练习题 004:判断某日期是该年的第几天

    [Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? ---------------------------------------------- 这题竟然写了 28 行代码! ...

  7. Python练习题-1.使用匿名函数对1~1000求和,代码力求简洁。

    Python 练习 标签(空格分隔): Python Python练习题 Python知识点 一.使用匿名函数对1~1000求和,代码力求简洁. 答案: In [1]: from functools ...

  8. PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。

    Python 练习 标签: Python Python练习题 Python知识点 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的 ...

  9. python 基础 2.8 python练习题

    python 练习题:   #/usr/bin/python #coding=utf-8 #@Time   :2017/10/26 9:38 #@Auther :liuzhenchuan #@File ...

随机推荐

  1. C++中几个输入函数的用法和区别(cin、cin.get()、cin.getline()、getline()、gets()、getchar())

    1.cin>> 用法1:最基本,也是最常用的用法,输入一个数字: #include <iostream>using namespace std;main (){int a,b; ...

  2. sass—使用自定义function和@each实现栅格布局

    /*使用自定义function和@each实现栅格布局*/ @function buildLayout($num: 5){ $map: (defaultValue: 0); //不能直接生成col,需 ...

  3. OpenCV-Python:形态学操作

    常用的形态学操作:腐蚀.膨胀.开运算和闭运算 一.什么叫形态学操作 形态学操作就是改变物体的形状,比如腐蚀就是"变瘦",膨胀就是"变胖" 形态学操作一般作用于二 ...

  4. java图片缩放与裁剪

    import java.awt.Graphics; import java.awt.Image; import java.awt.image.BufferedImage; import java.io ...

  5. hiveserver2启动成功但无法通过beeline连接

    可能是配置的问题. 我将hive.metastore.uris从配置文件中注释掉之后解决了hiveserver2启动成功但无法通过beeline连接的问题. [root@node03 conf]# v ...

  6. [原创]Xilinx工具关联UEStudio

    UE安装目录如下: C:\Program Files (x86)\IDM Computer Solutions\UEStudio\UEStudio.exe 对于ISE工具,在Editor -> ...

  7. [八省联考2018]林克卡特树lct

    题解: zhcs的那个题基本上就是抄这个题的,不过背包的分数变成了70分.. 不过得分开来写..因为两个数组不能同时满足 背包的话就是 $f[i][j][0/1]$表示考虑i子树,取j条链,能不能向上 ...

  8. Redis数据结构之intset(2)

    本文及后续文章,Redis版本均是v3.2.8 上文我们说到intset整型集合的数据结构定义即元素的添加和查询操作,本文我们来看下Redis暴露给外面使用的Set集合,先通过一些基本的命令回顾下se ...

  9. 记一次Mysql魔鬼实训

    1.查看某个Mysql数据库当前使用的字符集 show create database [库名称] 2.查看当前书库版本信息 #mysql -V MariaDB [(none)]> use my ...

  10. WEB测试重点

    1.功能测试:所实现的功能是否和需求一致:2.界面测试:界面是否美观,风格是否一致,文字内容是否正确:3.链接测试:打开链接速度是否合理:是否链接到正确的页面:是否有空白页面:4.性能测试:系统能支持 ...