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. GET和POST两种基本请求方法的区别

    文章来源:http://www.cnblogs.com/logsharing/p/8448446.html GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一 ...

  2. CMDB资产采集

    Agent(方式) 1:服务器每台都需要安装Agent 达到采集速度快,简单:造成性能损耗 获取每台服务器的资产并有返回值:v=subprocess.getoutput('dir')或者ipconfi ...

  3. Python中字符串颜色

    格式:\033[显示方式;前景色;背景色m 说明: 前景色 背景色 颜色 --------------------------------------- 30 40 黑色 31 41 红色 32 42 ...

  4. mysql 千万级数据查询效率实践,分析 mysql查询优化实践--本文只做了一部分,仅供参考

    数据量, 1300万的表加上112万的表 注意: 本文只做了部分优化,并不全面,仅供参考, 欢迎指点.   请移步tim查看,因为写的时候在tim写的,粘贴过来截图有问题,就直接上链接了. https ...

  5. 使用 WTForms 进行表单验证的例子

    #使用 WTForms 进行表单验证的例子 from wtforms import Form from wtforms import BooleanField from wtforms import ...

  6. html标记语言 --格式标记

    html标记语言 --格式标记 一.格式标记 1.<br>单标记,强制换行标记,让后面的文字.图片.表格等显示在下一行 2.<p>换段落标记 3.<center>居 ...

  7. 《Java面向对象设计》

    <Java面向对象设计> 第一章 面向对象软件工程与UML p理解为什么需要软件工程 p掌握软件工程的基本概念 p掌握软件生命周期各个阶段的主要任务 p了解流行软件开发过程 p了解软件过程 ...

  8. java集合详解

    1.java集合框架的层次结构 Collection接口: Set接口: HashSet具体类 LinkedHashSet具体类 TreeSet具体类 List接口:   ArrayList具体类 L ...

  9. kafka知识体系-kafka设计和原理分析

    kafka设计和原理分析 kafka在1.0版本以前,官方主要定义为分布式多分区多副本的消息队列,而1.0后定义为分布式流处理平台,就是说处理传递消息外,kafka还能进行流式计算,类似Strom和S ...

  10. 从零开始系列之vue全家桶(1)安装前期准备nodejs+cnpm+webpack+vue-cli+vue-router

    写在前面: 什么是全家桶? 包含了vue-router(http://router.vuejs.org),vuex(http://vuex.vuejs.org), vue-resource(https ...