字典 {}
在容器中存放数据,以及对数据进行说明的一种容器;它由键和值构成
用字典保存数据
{‘name’:‘荀彧’, ‘age’: 30, ‘height’: 185, ‘weight’:98}
一、性质
‘’’
1.字典的容器符号:{};类型:dict.;
2.字典是无序的;
3.字典是可变的(增删改)
4.字典中元素是以 键(key) 和 值(value)对的方式存在;
key:对数据的索引以及对数据的解释说明(只能是不可变数据类型)
value:实际要保存的数据(任意数据类型)
5.对字典的操作默认是对键操作
‘’’
二、字典没有拼接、重复、比较大小等操作
三、字典遍历,通过遍历字典的键,获取字典的值。
例:
dict1 = {‘name’: ‘荀彧’, ‘age’: 30, ‘height’: 185, ‘weight’: 98}
for i in dict1:
print(dict1[i]) # 通过键获取值
获取字典中所有键值对:使用“字典变量名.items()”方法,得到的结果是可迭代对象
print(dict1.items())
for key,value in dict1.items(): # 字典在遍历的时候,键和值可以同时进行遍历
print(key, value)
获取字典中所有的键:keys
获取字典中所有的值:values
print(dict1.keys(), dict1.values())
四、字典的“增”、“删”、“改”
创建空字典:dict = {}
增:
1.字典变量名[键] = 值
dict1 = {}
dict1[‘name’] = ‘荀彧’
2、利用‘setdefault()’方法:
如果字典中已经存在这个键,字典不发生变化;
如果字典中不存在这个键,等于将键和值添加到字典中。
如果setdefault只传入键,默认将值设置为None
dict1.setdefault(‘age’, 30)
dict1.setdefault(‘address’)
print(dict1)
3、.update()方法
将一个字典更新到原字典,如果见不存在,添加操作,反之则是修改操作,更改并覆盖原来的键和值
修改
1.字典名[键] = 值
dict1[‘name’] = ‘小李’
print(dict1)
删除
del 字典变量名[键]
del dict1[‘age’]
字典变量名.pop(键)
dict1.pop(‘address’)
print(dict1)
clear:清空
sum、max、min、sorted等一系列方法默认针对字典的键做操作
dict1 = {‘b’: 1, ‘a’: 10, ‘c’: 20}
print(sorted(dict1))
字典推导式
students = {
‘小明’: 90, ‘小王’: 60, ‘小张’: 80
}
将字典中成绩大于80分的学生及成绩添加到新列表中
dict_score = {i: students[i] for i in students if students[i] >= 80}
dict_score1 = {key: value for key, value in students.items() if value >= 80}
print(dict_score, dict_score1)