dict的基本操作

# Author:nadech

info = {
"stu001":"sjp",
"stu002":"cxx",
"stu003":"lsw"
} print(info)
#########查#######
#确定有这个值才用这种方法
print(info["stu001"])
#安全的获取方法
print(info.get("stu005"))
#判断是否存在
print("stu002" in info)#在python2中与info.has_key("stu002")一样 #########增#######
info["stu004"] ="dyq"
print(info)
#########改#######
info["stu001"] ="sjpppp"
print(info)
##########删######
#info.popitem()这个是随机删除
info.pop("stu001")
print(info)
del info["stu002"]
print(info) av_dicionary = {
"europe":{"":["a","b","c"],
2:["d","e","f"]
},
"america":{3:["g","h","i"],
4:["j","k","l"]
},
"tokyo":{6:["m","n","o"],
7:["p","q","r"]
}
}
#查
print(av_dicionary["tokyo"][6][0])
print((av_dicionary.get("tokyo")).get(6)) #改
av_dicionary["tokyo"][6][0] = "mmmmmmm"
print(av_dicionary)
#
av_dicionary.setdefault("tokyo","www.baidu.com")
print(av_dicionary)
av_dicionary.setdefault("taiwan",{"wwww.baidu.com":["hahahah","henhaoyong"]})
print(av_dicionary) info1 = {"s01":"nadech","s02":"aguilera","s03":"lsw"}
print(info1)
info2 = {1:2,"s03":"lswwww",3:4}
print(info2)
info1.update(info2)###跟新字典,存在的key值就将value更新,不存在的就加进去
print(info1) #将字典转化为列表
print(info1.items()) #初始化字典使用fromkeys,当有多层列表时,它只是这个数据的引用,当修改一个字典的数据时,其他的也都会修改
c = dict.fromkeys([6,7,8],["a",{1:"nadech"},2])
print(c)
c[6][1][1] = "aguilera"
print(c) ####字典的循环 ###推荐使用这个,因为更高效
for i in info1:
print(i,info1[i]) for i,v in info1.items():
print(i,v)

三级菜单

# Author:nadech

data = {
"江苏":{
"南京":{
"栖霞":["南邮仙林校区","南师范仙林校区","南财仙林校区"],
"鼓楼":["紫峰大厦","新街口","湖南路"]
},
"苏州":{},
"无锡":{}
},
"河南":{},
"云南":{}
}
print(data["江苏"]["南京"]["栖霞"]) exit_flag = False
while not exit_flag:
for i in data:
print(i)
#判断输入是否在所存在的省份中
choice1 = input(">>>请选择省份:") if choice1 in data: for j in data[choice1]:
print(j)
#判断输入是否在所存在的城市中
choice2 = input(">>>请选择城市:")
if choice2 in data[choice1]:
for k in data[choice1][choice2]:
print(k)
#判断输入的行政区是否存在
choice3 = input(">>>请选择行政区:")
if choice3 in data[choice1][choice2]:
print(data[choice1][choice2][choice3])
else:
print("您的输入有误!")
else:
print("您的输入有误!") else:
print("您的输入有误!")

dict的操作和三级菜单的更多相关文章

  1. python学习笔记(字符串操作、字典操作、三级菜单实例)

    字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...

  2. Python学习笔记五:字符串常用操作,字典,三级菜单实例

    字符串常用操作 7月19日,7月20日 ,7月22日,7月29日,8月29日,2月29日 首字母大写:a_str.capitalize() 统计字符串个数:a_str.count(“x”) 输出字符, ...

  3. python三级菜单的实现

    一.作业要求 1.使用字典实现三级菜单功能 2.直接输入前面数字进入下一级菜单 3.按B返回上一级,按Q退出 二.需要知识点 1.if循环 2.for循环,enumerate的用法 3.while循环 ...

  4. Py修行路 python基础 (五)三元运算 字符编码 元组 集合 三级菜单优化!

    三元运算 条件判断不能加冒号: a=3 b=5 c=a if a<b else b oct() 转成八进制的简写:16进制 标志:BH为后缀或是0x为前缀hex() 转成16进制 元组 跟列表是 ...

  5. day1作业--三级菜单

    作业概述: 写一个三级菜单 实现如下功能: (1)可依次选择进入各子菜单 (2)在每一级按“b”都可以返回上一级,按“q"都可以退出 流程图: readme: 简介: three_menu. ...

  6. Python学习之编写三级菜单(Day1,作业二)

    作业二:多级菜单 三级菜单 可依次进入各子菜单 在各级菜单中输入B返回上一级Q退出程序 知识点:字典的操作,while循环,for循环,if判断 思路: 1.开始,打印一级菜单让用户进行选择(可以输入 ...

  7. Android自己定义控件:老版优酷的三级菜单(效果图 + Demo)

    效果图: 制作思路: 1.先分析这个效果,事实上能够理解为把三级菜单分成level1,level2,level3,level1是始终显示的. 点击level1后,level2会出现:点击level2后 ...

  8. 老男孩python学习之作业二---三级菜单

    因为之前花力气完成了购物小程序的作业 现在做这个三级菜单简直是so easy!! 1.显示省级菜单 2.交互,提示用户输入要查看的省份(退出e) 2.1.用户正确输入列表中的省份 3.显示市级菜单 3 ...

  9. Python 三级菜单 增强版

    需要实现的功能是:三级菜单1.从文本内读出选项2.查询每一级的选项,并能对选项进行增/删/改功能3.每一级可以退出程序或者返回上一层 2018-5-14 更新内容 思路 实现过程中的BUG及解决方案: ...

随机推荐

  1. CentOS7 安装eclipse

    1. 首先将eclipse的压缩包文件解压到/opt目录下,要使用root权限.执行如下解压命令:tar -zxvf eclipse-jee-oxygen-1a-linux-gtk-x86_64.ta ...

  2. git初试

    在gitLab上新建一个项目,creat项目文件之后,进入到项目的路径之后,复制命令git clone ‘git@gitlab.touzila.com:xiacaixiang/gitgitTest1. ...

  3. Java-NIO(九):管道 (Pipe)

    Java NIO 管道是2个线程之间的单向数据连接.Pipe有一个source通道和一个sink通道.数据会被写到sink通道,从source通道读取. 代码使用示例: @Test public vo ...

  4. DIY一个超简单的画图程序

    编译环境:VS2017+Easy_X 最近笔者一直在翻阅Easy_X的帮助手册,学习到了一些关于获取鼠标状态消息函数的知识,感觉收获颇大,于是想试验一番,将所学知识运用出来.先补充一下在Easy_X中 ...

  5. Java知IO

    ---恢复内容开始--- Java将IO(文件.网络.终端)封装成非常多的类,看似繁杂,其实每个类的具有独特的功能. 按照存取的对象是二进制还是文本,java使用字节流和字符流实现IO. 流是java ...

  6. 网络安全实验室_上传关writeup

    请上传一张jpg格式的图片 先传个图片码试试 我肯定乖嘛(#`Д´)ノ 气到改后缀 请上传一张jpg格式的图片 我猜是00截断,不信来试试 先在赋值1.php .jpg,接着去hex中找到空格改成00 ...

  7. Discuz!X 系列 HTTP_X_FORWARDED_FOR 绕过限制进行密码爆破

    分析有个不对头的地方:http://wooyun.jozxing.cc/static/bugs/wooyun-2014-080211.html 后面再补 这个漏洞比较简单. 我们看到配置文件来./in ...

  8. ●BZOJ 1233 [Usaco2009Open] 干草堆 tower

    题链: http://www.lydsy.com/JudgeOnline/problem.php?id=1233 留坑.以后再来看看. (绝望,无奈,丧心...) (这个题的证明真的很诡异啊,看得我稀 ...

  9. [BZOJ]2017省队十连测推广赛1

    听学长说有比赛就随便打一打. A.普通计算姬 题目大意:给出一棵带权树,支持一下两种操作:1.修改一个点的权值:2.给出l,r,询问以点l为根的子树和.点l+1为根的子树和.点l+2为根的子树和--点 ...

  10. APIO 2013

    这套好丧--跟别的画风好不一样(中国风?).提答没做也没测,假装只有两题吧.140/200 T1.ROBOTS 题目大意:h*w的网格上有n个机器人编号1~n,网格上有空地.墙.顺/逆时针转向器,每次 ...