字典是python中的一种数据结构,称为映射,字典的作用和列表类似,都是用来存储对象的容器,列表存储数据的性能很好,但是查询数据的性能很差,字典中每一个元素都有一个唯一的名字,通过这个唯一的名字可以快速的查找到指定的元素,在查询元素的时候,字典的效率是非常快的。字典中的每个对象都有一个唯一的名字,这个名字被称为key,通过key可以快速的查询value,这个对象称为value。
新建一个空字典
dic=dict()
dic={}
字典的值可以是任意对象,字典的键是任意的不可变对象且不能重复。
创建新的字典–使用dict()函数来创建,每一个参数都是一个键值对,参数名就是键,参数值就是值
d=dict(name='孙悟空',age=18,gender='男')
print(d)
#打印结果:{'name': '孙悟空', 'age': 18, 'gender': '男'}
创建新的字典–将一个包含有双值子序列的序列转换为字典
d=dict([('name','wang'),('age',18)])
print(d)
#打印结果:{'name': 'wang', 'age': 18}
len()获取字典中键值对的个数
d=dict([('name','wang'),('age',18)])
print(len(d))
#打印结果:2
获取字典里的值
d={'name':'wang'}
print(d['name'])
#打印结果:wang
获取字典中不存在的键
d={'name':'wang'}
print(d['sex'])
#打印结果:报错
#Traceback (most recent call last):
#  File "/Users/xmly/PycharmProject/test2/0503.py", #line 60, in <module>
#    print(d['sex'])
#KeyError: 'sex'
get()获取字典中的值
d={'name':'wang'}
print(1,d.get('name'))
print(2,d.get('age'))
print(3,d.get('age','获取不到值时返回默认值'))
#打印结果:
1 wang
2 None
3 获取不到值时返回默认值
修改字典 d[key]=value ,如果key不存在就新增key和value,如果存在就修改key的value
d={'name':'wang'}
d['name']='william'
print(1,d)
d['age']=18
print(2,d)
#打印结果:
1 {'name': 'william'}
2 {'name': 'william', 'age': 18}
setdefault(key[,default])可以用来向字典中添加key-value,如果key已经存在于字典中,则返回key的值,不会对字典做任何操作,如果key不存在,则在字典中添加这个key ,并设置value
d={'name':'william'}
result=d.setdefault('age',18)
print(1,result)
result2=d.setdefault('name','wang')
print(2,result2)
#打印结果
1 18
2 william
updata()方法:将其他的字典中的key-value添加到当前字典中,⚠️如果其他的字典中存在相同的key,会将原字典中的key对应的value更新
a={'name':'will'}
b={'age':'18'}
a.update(b)
print(a)
#打印结果:{'name': 'will', 'age': '18'}
del 删除字典中的key-value
d={'name':'wang','age':18,'gender':'male'}
del d['name']
popitem()删除随机删除字典中的一个键值对,一般都会删除最后一个键值对
d={'name':'wang','age':18,'gender':'male'}
d.popitem()
pop() 根据key删除字典中的key-value,会将被删除的value返回,如果删除不存在的key会抛出异常,如果使用pop()指定了默认值,再删除不存在的key时,不会报错,而是直接返回默认值。
d={'name':'wang','age':18,'gender':'male'}
result=d.pop('name')
result2=d.pop('address','这是默认值')
print(1,result)
print(2,result2)
#打印结果:
'''
1 wang
2 这是默认值
'''
clear()清空字典
d={'name':'wang','age':18,'gender':'male'}
d.clear()
copy() 用于字典的浅复制,复制以后的对象和原对象是独立的,修改一个不会影响另一个
但是⚠️:浅复制只会简单复制对象内部的值,如果值也是一个可变对象,这个可变对象不会被复制
d={'a':{'name':'wang','age':20},'age':18,'gender':'male'}
d2=d.copy()
print(id(d))
print(id(d2))
#打印结果
'''
140214646828320
140214646837408
'''
#这时如果改变d2中的a这个key的value
d2['a']['name']='william'
print(d)
#打印结果:发现可以被改动,印证了“浅复制只会简单复制对象内部的值,如果值也是一个可变对象,这个可变对象不会被复制”
{'a': {'name': 'william', 'age': 20}, 'age': 18, 'gender': 'male'}
遍历字典keys(),values(),items()
#keys()该方法会返回字典的所有的key,该方法会返回一个序列,序列中保存有字典的所有的键
d={'name':'wang','age':18,'gender':'male'}
print(d.keys())
#可以遍历获取
for key in d.keys:print(key)
#values()该方法会返回字典的所有的value,该方法会返回一个序列,序列中保存有字典的所有的值
print(d.values())
#可以遍历获取
for value in d.values:print(value)
#items()该方法会返回字典所有的items,该方法会返回一个序列,序列中保存有字典的所有的双值子序列
print(d.items())
#可以遍历获取
for key,value in d.items():print(key,value)

Python--字典的操作相关推荐

  1. Python字典(Dictionary)操作全解【创建、读取、修改、添加、删除、有序字典、浅复制、排序】

    字典是"键-值"对的无序可变序列,字典中的每个元素可以分为两部分,"键"和"值".定义字典时,每个元素的"键"和&quo ...

  2. python字典的操作

    '''python字典操作 字典:(1)花括号定义的, (2)python内置的数据结构之一,与列表一样是一个可变序列 (3)以键值对(冒号前的叫键,冒号后的叫值)的方式存储数据,字典是一个无序的序列 ...

  3. Python字典的操作与使用

    字典的描述 字典是一种key-value的数据类型,使用就像我们上学用的字典,通过拼音(key)来查对应字的详细内容(value). 字典的特性 1.字典是无序的(不像列表一样有下标,它通过key来获 ...

  4. Python字典的操作小技巧——索引、增添、删除、修改与取键和值

    字典是非常常用的一种数据结构,它与json格式的数据非常相似,核心就是以键值对的形式存储数据,关于Python中的字典做如下四点说明: 构造字典对象需要使用大括号表示,即{},每一个字典元素都是以键值 ...

  5. python字典键操作

    2019独角兽企业重金招聘Python工程师标准>>> 添加键值对 首先定义一个空字典 >>> dic={} 直接对字典中不存在的key进行赋值来添加 >&g ...

  6. Python 字典dict操作定义

    字典是用大括号{ }来表示,它是python中最灵活的内置数据类型.它是一个无序的集合,通过键来存取值,而不能用索引. 字典的创建和使用 字典的组成:字典是由大括号{  }来包含其数据的,大括号内包含 ...

  7. python:字典的操作

    目录 一.遍历 1.遍历键keys: 2.遍历值values: 3.遍历项items: 二.添加元素 1.直接添加,给定键值对 2.使用update方法 三.删除元素 1.del函数 2.pop函数 ...

  8. Python 字典的操作

    #-*- coding:utf-8 -*- people = {"name":"jack","age":18,"addr" ...

  9. python字典操作添加_Python字典常见操作实例小结【定义、添加、删除、遍历】

    本文实例总结了python字典常见操作.分享给大家供大家参考,具体如下: 简单的字典: 字典就是键值对key-value组合. #字典 键值对组合 alien_0 ={'color':'green', ...

  10. python 字典循环_Python字典遍历操作实例小结

    本文实例讲述了Python字典遍历操作.分享给大家供大家参考,具体如下: 1 遍历键值对 可以使用一个 for 循环以及方法 items() 来遍历这个字典的键值对. dict = {'evapora ...

最新文章

  1. linux mysql统计次数_MySQL统计函数记录
  2. Machine Learning | (11) 回归性能评估与欠拟合、过拟合
  3. nodejs简单层级结构配置文件
  4. phoenix的元数据一般存在哪里_Phoenix的一些问题
  5. IntelliJ IDEA在行尾增加分号
  6. AI + 3D!英伟达开源3D深度学习框架Kaolin
  7. hive2 mysql_架构hive2mysql流程
  8. Javascript特效:简易留言板
  9. ZOJ 1060 Count the Color
  10. java 男女 相邻交换 队形_(Java实现) 洛谷 P1091合唱队形
  11. selenium调用浏览器进行抓取页面
  12. 新手做国外广告联盟lead常用工具汇总!
  13. excel因为文件格式或文件扩展名无效,请确定文件未损坏(Excel文件格式或文件扩展名无效)...
  14. 逆函数求导公式_反函数求导公式
  15. 在谷歌chrome中打开、编辑、保存金山 WPS Office完美解决方案!
  16. java webservice用户名密码_WebService 用户名密码验证
  17. SLCP验厂辅导,SLCP是向最终用户分享已验证的评估数据的关键
  18. 【CYW20189】一、芯片手册
  19. 免费且开源的ssh工具,支持多平台,文件传输
  20. 金税盘 实时上传服务器信息,金税盘上传参数怎么设置

热门文章

  1. XML fragments parsed from previous mappers already contains value for错误
  2. Linux的快捷键和主要命令(转)
  3. 【Python画图】matplotlib画折线图plt.plot、柱状图plt.bar、堆叠柱状图、饼图plt.pie以及自定义坐标轴的位置、显示汉字
  4. Docker容器启动Redis,MongoDB,MySQL,Nginx
  5. 嵌入式linux驱动自动化测试,通用的嵌入式自动化测试框架 - 心心草的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...
  6. MAC OS X 技术内幕 学习笔记之二 MAC OS系统架构
  7. 开通阿里云短信服务-PHP版本
  8. 171. Excel 表列序号。
  9. C# 阿里云Redis存储服务 使用总结
  10. 微信8.0新表情怎么更新