字典是一种通过名字或者关键字引用的得数据结构,其键可以是数字、字符串、元组,这种结构类型也称之为映射。字典类型是Python中唯一內建的映射类型。字典可以理解为列表的升级版。

  • dict是无序的
  • key必须是唯一的,so 天生去重

例如:

 info = {
'stu1101':"TengLan Wu"
'stu1102':"LongZe Luola"
'stu1103':"XiaoZe Maliya" }
print(info) info["stu1101"]="武藤兰"
print(info)

字典由key(键)和value(值)组成。用.keys和.values方法可以直接对字典进行查找。

例如:

 info ={'stu1101':"TengLan Wu",
'stu1102':"LongZe Luola",
'stu1103':"XiaoZe Maliya",
} print(info.values())
print(info.keys())

对字典可以进行增删修改:

 info ={'stu1101':"TengLan Wu",
'stu1102':"LongZe Luola",
'stu1103':"XiaoZe Maliya",
} info["stu1104"]="ZhiTian ZhenZi" #增
info["stu1101"]="GaoShu MaLiYa" #改
del info["stu1101"] #删除的第一种方式
info.pop["stu1101"] #删除的第二种方式
info.get["stu1101"] #查找,如果不存在则会返回 Fales
.setdefault和.update方法的应用举例。

1、Python 字典 setdefault() 方法和 get() 方法类似,返回指定键的值,如果键不在字典中,将会添加键并将值设置为一个指定值,默认为None。

get() 和 setdefault() 区别: setdefault() 返回的键如果不在字典中,会添加键(更新字典),而 get() 不会添加键。

 info ={'stu1101':"TengLan Wu",
'stu1102':"LongZe Luola",
'stu1103':"XiaoZe Maliya",
} info2={
'stu1103':"MaSheng Xi",
'stu1104':"CangMu MaYi",
'stu1105':"ZhiTian ZhenZi",
} info.setdefault('stu1104',"LaiJing Du")#1104不存在info表内,所以会把1104的key和value值加到表中
info.setdefault('stu1103',"MaSheng Xi") #1103这个key已经存在在info表内,所以value值不会改变
print(info) 输出结果》》》》》 {'stu1101': 'TengLan Wu', 'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1104': 'LaiJing Du'}

2、Python 字典 update() 方法用于更新字典中的键/值对,可以修改存在的键对应的值,也可以添加新的键/值对到字典中。

用法与 Python dict() 函数相似。

 info ={'stu1101':"TengLan Wu",
'stu1102':"LongZe Luola",
'stu1103':"XiaoZe Maliya",
} info2={
'stu1103':"MaSheng Xi",
'stu1104':"CangMu MaYi",
'stu1105':"ZhiTian ZhenZi",
} info.update(info2)
print(info) 输出结果》》》》》{'stu1101': 'TengLan Wu', 'stu1102': 'LongZe Luola', 'stu1103': 'MaSheng Xi', 'stu1104': 'CangMu MaYi', 'stu1105': 'ZhiTian ZhenZi'} ###stu1103的值被取代了

字典内的循环方法跟之前一样!

最新文章

  1. PHP日常开发工具-Sublime应用
  2. 利用php的register_shutdown_function来记录php的输出日志
  3. winform 对话框、打印框
  4. opencv写视频
  5. iOS学习笔记---oc语言第六天
  6. c 函数及指针学习 6
  7. 《怎样实现通过shell脚本将用户踢出系统》
  8. E/Trace: error opening trace file: No such file or directory
  9. OC中没有实现NSCopying技术时的深复制技术
  10. B - 队列,推荐
  11. [置顶] 强大的JQuery
  12. trie + 长度优先匹配,生成串
  13. LeetCode——Flatten Binary Tree to Linked List
  14. HTML学习(八)列表和块
  15. http://begin.lydsy.com/JudgeOnline/problem.php?id=2770(PKU2503 Babelfish)
  16. Python之file
  17. 设置build.gradle打包时自动加时间
  18. VB调用C# dll
  19. Ext.Js核心函数( 三)
  20. Ubuntu环境如何上传项目到GitHub网站?

热门文章

  1. AspectJ——预编译方式实现AOP
  2. Spring--2.Spring之IOC--IOC容器的23个实验(1)
  3. C++中全排列函数next_permutation 用法
  4. 小白学 Python 爬虫(41):爬虫框架 Scrapy 入门基础(八)对接 Splash 实战
  5. 用PHP写下HELLO WORLD!
  6. Django设置 DEBUG=False后静态文件无法加载解决
  7. springmvc 简化Javaweb 简单应用
  8. 分层有限状态机的C++实现
  9. Java中的Swap,如何实现?
  10. sas9.2 windows7系统 10年11月后 建立永久数据集时,提示:“用户没有与逻辑库相应的授权级别