要求:
- 共有三级菜单可选择
- 在每层菜单可进入下一菜单、返回上一层菜单和退出
代码:
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # Author:James Tao 4 5 data={ 6 '北京':{ 7 '昌平':{ 8 '沙河':['oldboy','test'], 9 '天通苑':['链家地产','我爱我家']10 },11 '朝阳':{12 '望京':['奔驰','陌陌'],13 '国贸':{ 'CCIC','HP'},14 '东直门':{ 'Advent','飞信'}15 },16 '海淀':{}17 },18 '山东':{19 '德州':{},20 '青岛':{},21 '济南':{}22 },23 '广东':{24 '东莞':{},25 '常熟':{},26 '佛山':{}27 }28 }29 30 flag=True31 32 while flag:33 34 for i in data:35 print(i)36 first_choice=input('选择进入下一级菜单/输入Q退出:')37 38 #进入第一级菜单39 if first_choice in data:40 41 while flag:42 43 for j in data[first_choice]:44 print('\t',j)45 second_choice=input('选择进入下一级菜单/输入R返回上一级/输入Q退出:')46 47 #进入第二级菜单48 if second_choice in data[first_choice]:49 while flag:50 51 for z in data[first_choice][second_choice]:52 print('\t\t', z)53 third_choice=input('选择进入下一级菜单/输入R返回上一级/输入Q退出:')54 55 #进入第三级菜单56 if third_choice in data[first_choice][second_choice]:57 while flag:58 59 for k in data[first_choice][second_choice][third_choice]:60 print('\t\t\t', k)61 fourth_choice=input('最后一层,输入R返回上一级/输入Q退出:')62 63 #是否返回到第三级或退出64 if fourth_choice=='R':65 break66 elif fourth_choice=='Q':67 flag=False68 69 #是否返回到第二级或退出70 if third_choice=='R':71 break72 elif third_choice == 'Q':73 flag = False74 75 #是否返回到第一级或退出76 if second_choice=='R':77 break78 elif third_choice == 'Q':79 flag = False80 81 #是否退出82 if first_choice=='Q':83 break