dict的操作和三级菜单
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的操作和三级菜单的更多相关文章
- python学习笔记(字符串操作、字典操作、三级菜单实例)
字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...
- Python学习笔记五:字符串常用操作,字典,三级菜单实例
字符串常用操作 7月19日,7月20日 ,7月22日,7月29日,8月29日,2月29日 首字母大写:a_str.capitalize() 统计字符串个数:a_str.count(“x”) 输出字符, ...
- python三级菜单的实现
一.作业要求 1.使用字典实现三级菜单功能 2.直接输入前面数字进入下一级菜单 3.按B返回上一级,按Q退出 二.需要知识点 1.if循环 2.for循环,enumerate的用法 3.while循环 ...
- Py修行路 python基础 (五)三元运算 字符编码 元组 集合 三级菜单优化!
三元运算 条件判断不能加冒号: a=3 b=5 c=a if a<b else b oct() 转成八进制的简写:16进制 标志:BH为后缀或是0x为前缀hex() 转成16进制 元组 跟列表是 ...
- day1作业--三级菜单
作业概述: 写一个三级菜单 实现如下功能: (1)可依次选择进入各子菜单 (2)在每一级按“b”都可以返回上一级,按“q"都可以退出 流程图: readme: 简介: three_menu. ...
- Python学习之编写三级菜单(Day1,作业二)
作业二:多级菜单 三级菜单 可依次进入各子菜单 在各级菜单中输入B返回上一级Q退出程序 知识点:字典的操作,while循环,for循环,if判断 思路: 1.开始,打印一级菜单让用户进行选择(可以输入 ...
- Android自己定义控件:老版优酷的三级菜单(效果图 + Demo)
效果图: 制作思路: 1.先分析这个效果,事实上能够理解为把三级菜单分成level1,level2,level3,level1是始终显示的. 点击level1后,level2会出现:点击level2后 ...
- 老男孩python学习之作业二---三级菜单
因为之前花力气完成了购物小程序的作业 现在做这个三级菜单简直是so easy!! 1.显示省级菜单 2.交互,提示用户输入要查看的省份(退出e) 2.1.用户正确输入列表中的省份 3.显示市级菜单 3 ...
- Python 三级菜单 增强版
需要实现的功能是:三级菜单1.从文本内读出选项2.查询每一级的选项,并能对选项进行增/删/改功能3.每一级可以退出程序或者返回上一层 2018-5-14 更新内容 思路 实现过程中的BUG及解决方案: ...
随机推荐
- SpringBoot使用log4j
1.添加log4j相关依赖 在pom.xml文件中添加相关依赖: <!--配置log4j--> <dependency> <groupId>org.springfr ...
- mysql 存储过程 实现数据同步
数据库 表 发生变化,需要把2.0的表数据 同步到3.0库中去: -- 同步数据存储过程执行 -- 更新留言旧表数据到新表数据中 /*DEFINER:Vector*/ drop procedure i ...
- Web 项目报错No suitable driver found for jdbc:mysql://localhost:3306/book 的一个解决办法
确认jar包加入到了build path中,然后注意版本是否与数据库相配,还要留意将jar包放入WEB-INF下的lib文件夹中
- python基础——继承实现的原理
python基础--继承实现的原理 1 继承顺序 class A(object): def test(self): print('from A') class B(A): def test(self) ...
- mysql 练习题
导出现有数据库数据: C:\Users\Administrator>mysqldump -u root db1>D:\agon\db1.sql -p #结构+数据 mysqldump - ...
- JAVA数据库编程、JAVA XML解析技术
JDBC概述 JDBC是JAVA中提供的数据库编程API curd :数据库增删改 链接字符串:String url = "mysql :/localhost :3306/jdbc/&quo ...
- jQuery系列 第六章 jQuery框架事件处理
第六章 jQuery框架事件处理 JavaScript以事件驱动来实现页面的交互,其核心是以消息为基础,以事件来驱动.虽然利用传统的JavaScript事件处理方式也能够完成页面交互,但jQuery框 ...
- 【Android】Android Studio3.1 Mac版本设置项目桌面icon
近来项目处于测试阶段,工作少了许多,就装了个最新的Android Studio,想写一下安卓.新建好项目,想设置个桌面的icon.我先准备好自己的icon图片,然后复制粘贴到res/mipmap-hd ...
- Shell自学二(参数传递和数组)
8.传递参数 1.使用$n来传递参数($0表示文件名) 例子: echo "执行的文件名:$0"; echo "第一个参数为:$1"; ...
- windows版本的phantomjs-2.1.1-windows安装
windows版本的phantomjs-2.1.1-windows安装 1.下载 链接:http://pan.baidu.com/s/1dEUl6dN 密码:oij8 2.安装 下载好之后解压放到某个 ...