美文网首页
爬虫_008_字典

爬虫_008_字典

作者: 为宇绸缪 | 来源:发表于2023-01-11 20:17 被阅读0次

字典:字典可以成对儿的保存数据 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
"""

相关文章

网友评论

      本文标题:爬虫_008_字典

      本文链接:https://www.haomeiwen.com/subject/mlivcdtx.html