字典:字典可以成对儿的保存数据 dict = {key: value}
列表的查找效率比较高,给索引就可以找,但删除和修改的时候会比较麻烦。字典比列表的查找性能要低,但是新增和删除比列表强
注意:
(1)字典的key是不能重复的。因为在处理字典中数据的时候需要用到key
(2)key是决定数据存放的位置,value是你要存储的数据。有key才能找到数据,如果有重复的key,后存入的key会将之前存储的key的值给替换掉
(1)字典的创建
字典的两种初始化方式
dic = {}
dic = dict()
字典的赋值方式
# 方法1:可以在初始化的时候直接写字典的内容
dic = {"name": "Yu", "age": 18}
# 方法2:新建一个空字典,然后以键值对的形式赋值
dic = {}
dic["name"] = "Yu"
dic["age"] = 18
# 方法3:使用dic.setdefault(key, value)设置默认值(不常用)
# 如果key已经存在了,那么就不执行新增的过程了
(2)修改字典的值
修改 dic[key] = new_value
如果key在字典中存在,那么就是修改字典。如果key在字典中不存在,就是新增。相当于保存。
dic["age"] = 28
(3)删除
dic.pop(key) 根据key值来进行删除
dic = {"name": "Yu", "age": 18}
dic.pop("age")
print(dic)
# 结果:{'name': 'Yu'}
(4)查询
方法1:通过dic[key] 查询字典中的内容。在字典中获取数据,必须通过key
dic = {"name": "Yu", "age": 18}
name = dic["name"]
print(name)
# 结果:Yu
方法2:通过 dic.get(key)
dic = {"name": "Yu", "age": 18}
age = dic.get("age")
print(age)
# 结果:18
两种方法的区别:当key不存在的时候,使用 .get()会返回一个None,dict[key]直接报错。
当我们拿不准的时候,使用 .get(),但一般情况下都是知道字典里面的key
我们在大多数情况下是知道key的值的
(5)循环
直接循环,可以获取到key,然后通过key获取相应的value
循环字典的操作不是很常见(切记,不要见到字典就循环,列表是循环最多的)
字典可以看成是一条数据,用里面的哪个数据就直接使用key进行取值,不需要循环
dic = {"name": "Yu", "age": 18, "hobby": "games"}
for key in dic:
print(key, dic[key])
"""
运行结果
name Yu
age 18
hobby games
"""
网友评论