首页 > 编程语言 > 详细

Python用字典构建多级菜单

时间:2019-03-07 12:55:20      阅读:161      评论:0      收藏:0      [点我收藏+]

相关知识点:

#key-value
#字典是无序的,因为他没有下标,通过key找

info={
    stu01:"liuhaolai",
    stu02:"wangshulin"
}

print(info[stu01])
info[stu03]=刘**#若不存在该key,则直接添加
info[stu04]=王##
print(info)
#del
del info[stu03]
print(info)
#pop
info.pop(stu04)
print(info)

print(info.get(stu03))#不确定字典里有没有时用

print(stu01 in info)#判断有没有

print(info.values())#打印值
print(info.keys())#打印key

#字典的嵌套
place={
    辽宁:{
        大连:[很漂亮,很干净],
        沈阳:[很大,有些乱],
        阜新:[很小,很安逸]
    },
    江苏:{
        南京:[省会,性价比极低],
        苏州:[古今结合,小桥流水],
        镇江:[有些乱,一般般]
    }
}
print("------")
print(place)
place[江苏][镇江][1]=一般般啦
print(place)

print(place.values())#打印值
print(place.keys())#打印key

place.setdefault(河北,{唐山:[0,1]})#查,没有就添加,和get不同
print(place)

print(place.setdefault(江苏,{苏州:[0,1]}))#查,没有就添加


info={
    stu01:"liuhaolai",
    stu02:"wangshulin",
    stu03:lucky,
    stu04:pangpang
}
new={
    stu01:david,
    stu02:tree,
    stu05:lala
}
new.setdefault(stu03,david)#查,没有就添加
print(new)
info.update(new)#将已有的覆盖更新,没有的创建
print(info)
print(info.items())#字典转成列表

c=dict.fromkeys([6,7,8],[1,{"name":number}])#初始化一个新字典
print(c)

#字典的循环
info2={
    stu01:"liuhaolai",
    stu02:"wangshulin",
    stu03:lucky,
    stu04:pangpang
}
print(info2.get(stu01))
print(info2.setdefault(stu01))
for i in info2:#推荐!!!!!!
    print(i,info[i])
print("------")
for k,v in info2.items():#效果一样,但低效
    print(k,v)

正文:

需求:

1.三级菜单
2.可依次选择进入各子菜单
3.按b逐级返回,按q退出

 1 # Author:David Liu 
 2 # Be Happy!
 3 
 4 place={
 5     辽宁1:{
 6         大连:{
 7             甘井子区:[大连理工大学],
 8             沙河口区:[数码广场]
 9         },
10     },
11     辽宁2:{
12         沈阳: {
13             皇姑区: [辽宁大学],
14             铁西区: [小树林]
15         },
16     },
17     辽宁3:{
18         阜新: {
19             海州区:[胖胖来],
20             细河区:[细河区人民政府]
21         }
22     }
23 }
24 exit_flag=True
25 while exit_flag:
26     for i in place:
27         print(i)
28     choice=input("选择进入,按q退出>>")
29     if choice in place:
30         while exit_flag:
31             for i2 in place[choice]:
32                 print(\t,i2)
33             choice2=input("选择进入,按b返回,按q退出>>")
34             if choice2 in place[choice]:
35                 while exit_flag:
36                     for i3 in place[choice][choice2]:
37                         print(\t\t, i3)
38                     choice3 = input("选择进入,按b返回,按q退出>>")
39                     if choice3 in place[choice][choice2]:
40                         for i4 in place[choice][choice2][choice3]:
41                             print(\t\t\t,i4)
42                         choice4 = input("最后一层,按b返回,按q退出>>")
43                         if choice4==b:
44                             pass#没用,占位的
45                         elif choice4==q:
46                             exit_flag = False
47                     if choice3 == b:
48                         break
49                     elif choice3 == q:
50                         exit_flag = False
51             if choice2 == b:
52                 break
53             elif choice2 == q:
54                 exit_flag = False
55     elif choice == q:
56         exit_flag = False
57 print(\n,"已退出!".center(50,-))

 

2019年3月7日

 

Python用字典构建多级菜单

原文:https://www.cnblogs.com/David0207AlwaysHappy/p/10488790.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!