本站消息

  出租广告位,需要合作请联系站长

  今日名言-想象你自己对困难作出的反应,不是逃避或绕开它们,而是面对它们,同它们打交道,以一种进取的和明智的方式同它们奋斗 。——马克斯威尔·马尔兹

  今日名言-用谅解、宽恕的目光和心理看人、待人。人就会觉得葱笼的世界里,春意盎然,到处充满温暖。——蔡文甫


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

python:dict字典操作及常用方法

发布于2021-07-25 07:33     阅读(1195)     评论(0)     点赞(27)     收藏(5)


字典是可变容器类型,可以存储任意类型对象。在python中,创建字典,使用{}或者dict()函数。
字典中的值是以键值对(key=>value)的形式存在, key和value使用:分割。每个键值对之间用,分割。格式形式如下:
test_dict = {key1:value1, key2:value2}
需要注意的是:
1.键是唯一的,如果键出现重复,后面的会替代前面的。
2.键的值必须不可变
3.值不需要唯一,且值可以是任何类型的。

1.创建空字典:使用{},或者dict()

在这里插入代码片# 字典:使用{} 、 dict()创建字典
dict1 = {}  # 创建空字典
dict2 = dict()  # 创建空字典
print("字典dict1:{},类型为:{}".format(dict1, type(dict1)))
print("字典dict2:{},类型为:{}".format(dict2, type(dict2)))

在这里插入图片描述

2.字典取值:将字典的key放进[]中

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典

name = dict1['姓名']  # 取出姓名对应的字典值

print('我的名字是:{}'.format(name))

在这里插入图片描述
需要注意的是,在取出字典值时,key的值要正确,如果key不存在字典中,会报错:
在这里插入图片描述

3.字典修改

新增字典键值对

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典

dict1['单位'] = '研究院'

print(dict1)

在这里插入图片描述
更新字典值:

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典

dict1['学历'] = '研究生'

print(dict1)

在这里插入图片描述
删除字典键值:
a.通过del删除单一键值对

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典

del dict1['学历']

print(dict1)

在这里插入图片描述

b.通过del删除字典:这个删除是彻底删除,包括字典及字典内容

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
del dict1

print(dict1)  # 打印字典,不存在

在这里插入图片描述

c.通过clear清空字典:这个清空是清空字典中的内容,但字典还存在

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
dict1.clear()

print(dict1)

在这里插入图片描述

4.常用方法

copy()函数,对字典进行浅复制,并返回。

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
dict2 = dict1.copy()  # copy字典

print(dict2)  

在这里插入图片描述

get方法获取指定key的值

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
value = dict1.get('年龄')

print("得到的年龄值是:{}".format(value))

在这里插入图片描述
需要注意的是,使用get方法取值时,如果key不存在,则会返回None:
在这里插入图片描述

items方法,以列表的形式返回键和值的元组

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
value = dict1.items()  # 以列表的形式,返回字典的键和值的元组

print(value)

在这里插入图片描述

keys方法,以列表的形式,返回字典中的所有的key

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
keys = dict1.keys()  # 以列表的形式返回字典中所有的key

print(keys)

在这里插入图片描述

values方法,以列表的形式返回字典中所有的字典值

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
values = dict1.values()  # 以列表的形式返回字典中所有的value

print(values)

在这里插入图片描述

fromkeys(seq[, value])创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值,如果values 未设置,则字典值默认为None

sec = ['姓名', '年龄', '性别']

dic1 = dict.fromkeys(sec)
dic2 = dict.fromkeys(sec, 111)
print(dic1)
print(dic2)

在这里插入图片描述

setdefault(key, default=None)方法,与get方法类似,区别在于,setdefault当键不存在时,会自动添加,并赋予默认值。如果不设置默认值时,则为None

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
dict1.setdefault('test')  # 不设置default,默认为None
dict1.setdefault('hahah', '默认值')

print(dict1)

在这里插入图片描述

update函数把一个字典中的键/值对更新到另外一个字典里。

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
dict2 = {'籍贯': '北京'}
dict1.update(dict2)
print(dict1)

在这里插入图片描述

pop函数,删除指定key的键值对,并将key对应的值返回

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
del_val = dict1.pop('学历')
print(dict1)
print(del_val)

在这里插入图片描述

popitem 方法,以元组的形式返回并删除字典中的最后一对键和值。

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
del_val = dict1.popitem()
print(dict1)
print(del_val)

在这里插入图片描述

len函数,计算字典的元素个数,即字典中key的个数

dict1 = {'姓名': '张三', '年龄': 18, '性别': '女', '地址': '北京市', '学历': '本科'}  # 创建字典
length = len(dict1)
print(length)

在这里插入图片描述

原文链接:https://blog.csdn.net/c_xiazai12345/article/details/118998307



所属网站分类: 技术文章 > 博客

作者:听见那声音

链接:http://www.pythonpdf.com/blog/article/559/fe86a2884eea3b31c54b/

来源:编程知识网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

27 0
收藏该文
已收藏

评论内容:(最多支持255个字符)