Python字典实现简单的三级菜单(实例讲解)

yipeiwu_com5年前Python基础

如下所示:

data = {
 "北京":{
  "昌平":{"沙河":["oldboy","test"],"天通苑":["链接地产","我爱我家"]},
  "朝阳":{"望京":["奔驰","陌陌"],"国贸":["CICC","HP"],"东直门":["advent","飞信"]},
  "海淀":{}
 },
 "山东":{
  "德州":{},
  "青岛":{},
  "济南":{}
 },
 "广东":{
  "东莞":{},
  "常熟":{},
  "佛山":{}
 }
}
exit_flag = False
while not exit_flag:
 for i in data:
  print(i)
 choice_s = input("请输入以上任一省或直辖市名称>>>:")
 if choice_s in data:
  while not exit_flag:
   for i in data[choice_s]:
    print("\t",i)
   choice_q = input("请输入以上任一市区名称>>>:")
   if choice_q in data[choice_s]:
    while not exit_flag:
     for i in data[choice_s][choice_q]:
      print("\t\t",i)
     choice_j = input("请输入以上任一街道名称>>>:")
     if choice_j in data[choice_s][choice_q]:
      for i in data[choice_s][choice_q][choice_j]:
       print("\t\t",i)
      last = input("最后一层,按b返回>>>:")
      if last == "b":
       pass
      elif last == "q":
       exit_flag = True
     if choice_j == "b":
      break
     elif choice_j == "q":
      exit_flag = True
   if choice_q == "b":
    break
   elif choice_q == "q":
    exit_flag = True

要点:

1、字典的层级关系

2、break是终止本次循环,pass是什么也不做,一个占位符而已

3、巧妙使用exit_flag = False

以上这篇Python字典实现简单的三级菜单(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

关于python2 csv写入空白行的问题

关于python2 csv写入空白行的问题

如下所示: writer = csv.writer(open('xx.csv','w')) data = [('zzz', 20, 123456),('jojo', 10, 7890...

Python利用matplotlib生成图片背景及图例透明的效果

Python利用matplotlib生成图片背景及图例透明的效果

前言 最近工作中遇到一个需求,在使用matplotlib生成图片,想要背景透明,而且图例部分也显示透明效果,通过查找相关资料找到了大概的设置方法,特此记录,方便自己或者有需要的朋友们参考...

Python使用combinations实现排列组合的方法

好久没有写博客了!昨天小牛在上海举办了牛友见面会,现场优惠还是比较大,心仪已久加上一时脑热就入手了。以为会有多么开心,其实目前最大的感受就是焦虑!担心电动车被偷,担心电池被偷,担心路上突...

Python实现全角半角转换的方法

本文实例讲解了Python实现全角半角转换的方法,相信对于大家的Python学习能够起到一定的参考借鉴价值。如下所示: 一、全角半角转换概述: 全角字符unicode编码从65281~6...

Python3+Requests+Excel完整接口自动化测试框架的实现

Python3+Requests+Excel完整接口自动化测试框架的实现

框架整体使用Python3+Requests+Excel:包含对实时token的获取 1、------base -------runmethond.py runmethond:对不同的请...