成都哪家公司做网站最好,微信小程序游戏充值破解,百度推广后台登录,图片外链在线生成网址文章目录 字典#xff08;dict#xff09;创建字典获取字典中的值修改字典删除字典中的键值对复制字典字典推导式遍历字典使用keys()方法使用values()方法使用items()方法 小结 集合#xff08;set#xff09;创建集合集合操作集合运算小结 python精品专栏推荐python基础知… 文章目录 字典dict创建字典获取字典中的值修改字典删除字典中的键值对复制字典字典推导式遍历字典使用keys()方法使用values()方法使用items()方法 小结 集合set创建集合集合操作集合运算小结 python精品专栏推荐python基础知识0基础入门python爬虫知识 字典dict
字典是一种新的数据结构被称为映射mapping。它类似于列表都用于存储对象。然而相比列表字典在查询数据时性能更佳。这是因为在字典中每个元素都有一个唯一的名字通过这个名字可以快速查找到指定的元素。
字典由多个键值对key-value构成其中每个键值对都有一个唯一的键和对应的值。通过键可以快速查询到对应的值。创建字典的方式是使用大括号 {}并提供键值对。键可以是任意不可变对象例如 int、str、bool、tuple 等但通常我们使用字符串作为键。
创建字典
使用{}来创建字典语法{k1:v1,k2:v2,k3:v3}。
# 使用{}
d {name:孙悟空, age:18, gender:男}也可以使用dict()函数来创建字典每一个参数都是一个键值对参数名就是键参数值就是值这种方式创建的字典key都是字符串。
# 使用dict()函数来创建字典
d dict(name孙悟空, age18, gender男)还可以将一个包含双值子序列的序列转换为字典双值序列指的是序列中只有两个值如[1,2]、(a,3)和ab等。子序列指的是序列中的元素也是序列的情况比如[(1,2),(3,5)]。
d dict([(name, 孙悟饭), (age, 18)])获取字典中的值
可以使用键来获取字典中的值语法为d[key]。如果键不存在会抛出异常KeyError。
print(d[age])可以使用get(key[, default])方法来根据键获取字典中的值。如果键在字典中不存在则会返回None也可以指定一个默认值作为第二个参数当获取不到值时返回默认值。
print(d.get(name))
print(d.get(hello, 默认值))修改字典
可以使用d[key] value来修改字典中的键值对。如果键存在则会覆盖其对应的值如果键不存在则会添加新的键值对。
d[name] sunwukong # 修改字典的key-value
d[address] 花果山 # 向字典中添加key-value另外还可以使用setdefault(key[, default])方法向字典中添加键值对。如果键已经存在于字典中则返回键对应的值不会对字典做任何操作如果键不存在则向字典中添加该键并设置对应的值。
result d.setdefault(name, 猪八戒)
result d.setdefault(hello, 猪八戒)还可以使用update([other])方法将其他字典中的键值对添加到当前字典中。如果有重复的键则后面的键值对会替换当前的。
d {a: 1, b: 2, c: 3}
d2 {d: 4, e: 5, f: 6, a: 7}
d.update(d2)删除字典中的键值对
可以使用del关键字删除字典中的键值对。
del d[a]
del d[b]还可以使用popitem()方法随机删除字典中的一个键值对一般会删除最后一个键值对。删除后该方法会将删除的键值对作为返回值返回返回值是一个元组包含两个元素第一个元素是被删除的键第二个元素是被删除的值。
result d.popitem()另外还可以使用pop(key[, default])方法根据键删除字典中的键值对。该方法会返回被删除的值。如果删除不存在的键会抛出异常。如果指定了默认值并且删除的键不存在则不会报错而是直接返回默认值。
result d.pop(d)
result d.pop(z, 这是默认值)此外可以使用clear()方法来清空字典中的键值对。
d.clear()复制字典
可以使用copy()方法对字典进行浅复制。复制后的对象和原对象是独立的修改一个不会影响另一个。需要注意的是浅复制只会复制对象内部的值对于值也是可变对象的情况它们不会被复制。
d {a: 1, b: 2, c: 3}
d2 d.copy()d {a: {name: 孙悟空, age: 18}, b: 2, c: 3}
d2 d.copy()
d2[a][name] 猪八戒print(d , d, id(d))
print(d2 , d2, id(d2))字典推导式
与列表推导式类似Python 还支持使用字典推导式创建字典。
# 创建一个包含数字的字典
d {i: i**2 for i in range(5)}
print(d) # 输出{0: 0, 1: 1, 2: 4, 3: 9, 4: 16}遍历字典
遍历字典是指依次访问字典中的每一个键值对。在Python中有几种方法可以实现字典的遍历操作。
使用keys()方法
keys()方法会返回字典的所有键。我们可以通过遍历键来获取字典中的每个键值对。
示例代码
d {name:孙悟空,age:18,gender:男}for k in d.keys():print(k, d[k])使用keys()方法可以获取字典中的所有键然后通过遍历键来获取每个键值对的值。
使用values()方法
values()方法会返回字典的所有值。我们可以通过遍历值来获取字典中的每个键值对。
示例代码
d {name:孙悟空,age:18,gender:男}for v in d.values():print(v)使用values()方法可以获取字典中的所有值然后通过遍历值来访问每个键值对的值。
使用items()方法
items()方法会返回字典中的所有项每一项是一个包含键和值的双值子序列。
示例代码
d {name:孙悟空,age:18,gender:男}for k, v in d.items():print(k, , v)使用items()方法可以获取字典中的所有项然后通过遍历项来获取每个键值对的键和值。
小结
字典是一种非常灵活的数据结构可以用于存储各种类型的数据。通过键值对的方式我们可以快速地查找、添加、修改和删除元素。此外字典还支持字典推导式等高级用法可以帮助我们更加方便地操作数据同时你可以根据具体需求选择合适的方法进行遍历字典。
集合set
集合和列表非常相似不同点如下
集合中只能存储不可变对象集合中存储的对象是无序的不按元素的插入顺序保存集合中不能存在重复的元素
创建集合
可以使用{}来创建集合
s {10, 3, 5, 1, 2, 1, 2, 3, 1, 1, 1, 1} # class set注意集合中不能包含可变对象例如列表
# s {[1, 2, 3], [4, 6, 7]} # TypeError: unhashable type: list可以使用set()函数来创建集合
s set() # 空集合还可以通过set()将序列和字典转换为集合
s set([1, 2, 3, 4, 5, 1, 1, 2, 3, 4, 5])
s set(hello)
s set({a: 1, b: 2, c: 3}) # 只包含字典中的键集合操作
可以使用以下操作来处理集合
使用in和not in来检查集合中的元素是否存在使用len()来获取集合中元素的数量使用add()向集合中添加元素使用update()将一个集合中的元素添加到当前集合中使用pop()随机删除并返回一个集合中的元素使用remove()删除集合中的指定元素使用clear()清空集合使用copy()进行浅复制
示例代码
s {a, b, 1, 2, 3, 1}print(c in s) # False
print(len(s))s.add(10)
s.add(30)s2 set(hello)
s.update(s2)
s.update((10, 20, 30, 40, 50))
s.update({10: ab, 20: bc, 100: cd, 1000: ef})result s.pop()s.remove(100)
s.remove(1000)s.clear()print(result)
print(s, type(s))集合运算
在对集合进行运算时不会影响原来的集合而是返回一个运算结果。
示例代码
s {1, 2, 3, 4, 5}
s2 {3, 4, 5, 6, 7}result s s2 # 交集运算
result s | s2 # 并集运算
result s - s2 # 差集
result s ^ s2 # 异或集a {1, 2, 3}
b {1, 2, 3, 4, 5}result a b # 检查一个集合是否是另一个集合的子集
result {1, 2, 3} {1, 2, 3} # True
result {1, 2, 3, 4, 5} {1, 2, 3} # Falseresult {1, 2, 3} {1, 2, 3} # 检查一个集合是否是另一个集合的真子集
result {1, 2, 3} {1, 2, 3, 4, 5} # Trueresult a b # 检查一个集合是否是另一个的超集
result a b # 检查一个集合是否是另一个的真超集print(result , result)以上是关于集合的一些基本操作和运算总结如下。
小结
当使用集合时需要注意以下几点
集合是一种无序且元素唯一的数据结构。可以使用{}或set()函数创建集合。集合中只能存储不可变的对象不能包含可变对象。可以使用in和not in来检查集合中的元素是否存在。使用len()获取集合中元素的数量。使用add()向集合中添加元素使用update()将一个集合中的元素添加到当前集合中。使用pop()随机删除并返回一个集合中的元素使用remove()删除集合中的指定元素使用clear()清空集合。使用copy()进行浅复制。集合可以进行交集运算、并集运算|、差集运算-和异或集运算^。可以使用、、和来比较两个集合的关系如子集、超集和真子集等。
总结起来集合是一种非常有用的数据结构适用于需要存储一组元素并进行快速元素查找和去重的场景。
python精品专栏推荐 python基础知识0基础入门
【python基础知识】0.print()函数 【python基础知识】1.数据类型、数据应用、数据转换 【python基础知识】2.if条件判断与条件嵌套 【python基础知识】3.input()函数 【python基础知识】4.列表和字典 【python基础知识】5.for循环和while循环 【python基础知识】6.布尔值和四种语句break、continue、pass、else 【python基础知识】7.实操-用Python实现“文字PK”小游戏一 【python基础知识】7.实操-用Python实现“文字PK”小游戏二 【python基础知识】8.编程思维如何解决问题-思维篇 【python基础知识】9.函数的定义和调用 【python基础知识】10.用函数编写程序 - 实操篇 【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇 【python基础知识】11.如何debug -常见报错原因及排查思路 - 思维篇 【python基础知识】12.类与对象一 【python基础知识】12.类与对象二 【python基础知识】13.类与对象三 【python基础知识】13.类与对象四 【python基础知识】14.图书管理系统的搭建类与对象实操 【python基础知识】15.编码基础知识 【python基础知识】16.文件读写基础及操作 【python基础知识】16.“古诗默写题”的python实现文件读写和编码-实操篇 【python基础知识】17.模块的概念以及如何引入 【python基础知识】18.实操-使用python自动群发邮件 【python基础知识】19.产品思维以及流程图的使用 - 思维篇 【python基础知识】20.“午饭吃什么”的python实现产品思维-实操篇 【python基础知识】21.高效偷懒的正确打开方式-毕业篇 【python文件处理】CSV文件的读取、处理、写入 【python文件处理】Excel自动处理使用 openpyxl 【python文件处理】-excel格式处理 python爬虫知识
【python爬虫】1.爬虫基础知识 【python爬虫】2.网页基础知识 【python爬虫】3.爬虫初体验BeautifulSoup解析 【python爬虫】4.爬虫实操菜品爬取 【python爬虫】5.爬虫实操歌词爬取 【python爬虫】6.爬虫实操带参数请求数据 【python爬虫】7.爬到的数据存到哪里 【python爬虫】8.温故而知新 【python爬虫】9.带着小饼干登录cookies 【python爬虫】10.指挥浏览器自动工作selenium 【python爬虫】11.让爬虫按时向你汇报 【python爬虫】12.建立你的爬虫大军 【python爬虫】13.吃什么不会胖爬虫实操练习 【python爬虫】14.Scrapy框架讲解 【python爬虫】15.Scrapy框架实战热门职位爬取 【python爬虫】16.爬虫知识点总结复习