Python零基础入门(八)——字典与集合(2)

简介: Python零基础入门(八)——字典与集合(2)

添加、修改和删除字典元素


可以使用赋值运算符来添加、修改和删除字典的元素。例如,添加新的键值对:

person = {"name": "Alice", "age": 25, "gender": "female"}
person["height"] = 165

修改已有键的值:

person = {"name": "Alice", "age": 25, "gender": "female"}
person["age"] = 26

删除指定键的键值对:

person = {"name": "Alice", "age": 25, "gender": "female"}
del person["gender"]

当删除一个不存在的键时,将抛出 KeyError 异常。因此,需要将上面的代码修改为以下内容,从而防止删除不存在的元素时抛出异常:

person = {"name": "Alice", "age": 25, "gender": "female"}
if "gender" in person:
  del person["gender"]
print(person)


字典推导式


字典推导式是一种简洁创建字典的方法,类似于列表推导式。它可以根据一个表达式和一个可迭代对象来创建字典。例如,将列表的元素作为键,其平方作为值创建字典:

numbers = [1, 2, 3, 4, 5]
squared_dict = {x: x**2 for x in numbers}
print(squared_dict)

输出结果为:

{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}


集合


集合是一种无序、不重复元素的数据结构。集合中的元素可以是任意类型的(如整数、浮点数、字符串、元组等),它有可变集合(set) 和不可变集合(frozenset) 两种。这里所要介绍的 set 集合是可变序列。在形式上,集合的所有元素都放在一-对大括号 “{}” 中,两个相邻元素间使用逗号 “,” 分隔。集合最好的应用就是成员检测和去重,因为集合中的每个元素都是唯一的。


集合的创建和删除


在 Python 中,可以使用花括号 “{}” 或 set() 函数来创建一个集合。例如:

fruits = {"apple", "banana", "cherry"}
nums = {3,1,4,1,5,9,2,6}
set1 = {'Python',28,('人生苦短','我用Python')}

使用 set() 函数将列表、元组等其他可迭代对象转换为集合:


fruits = set("人生苦短,我用Python")
nums = set([3,1,4,1,5,9,2,6])
set1 = ( ('Python',28,('人生苦短','我用Python')) )

要删除集合,可以使用 del 语句。例如:

fruits = {"apple", "banana", "cherry"}
del fruits


注意

  1. 在创建集合时,如果输入了重复的元素,Python 会自动只保留一个。
  2. 由于 Python 中的 set 集合是无序的,所以每次输出时元素的排列顺序可能不同。
  3. 创建集合时推荐采用 set() 函数实现。这是因为在创建空集合时,只能使用 set() 函数实现,而不能使用一对大括号 “{}” 实现,在 Python 中,直接使用一对大括号 “{}” 表示创建一个空字典。


集合的添加和删除


可以使用 add() 方法向集合中添加元素。例如:

fruits = {"apple", "banana", "cherry"}
fruits.add("orange")

可以使用 remove() 方法或 discard() 方法删除集合中的元素。它们的区别在于,remove() 方法在元素不存在时会抛出 KeyError 异常,而 discard() 方法不会。例如:

fruits = {"apple", "banana", "cherry"}
fruits.remove("banana")
fruits.discard("orange")

另外,如果只是想删除集合的全部元素,可以使用集合对象的 clear() 方法实现。执行 clear() 方法后,原集合将变为空集合。还可以使用集合对象的 pop() 方法随机移除并返回一个元素。


集合的交集、并集和差集运算


集合最常用的操作就是进行交集、并集和差集运算。例如,交集运算使用 & 符号,并集运算使用 | 符号,差集运算使用 - 符号:

fruits1 = {"apple", "banana", "cherry"}
fruits2 = {"banana", "orange", "pear"}
intersection = fruits1 & fruits2
union = fruits1 | fruits2
difference = fruits1 - fruits2

列表、元组、字典和集合的区别


1690480278250.png


结语


在本篇博客中,介绍了 Python 中的字典和集合。列字典是一种键值对的数据结构,用于存储和管理可变的数据集合,而集合是一种无序、不重复元素的数据结构,用于高效地进行成员检测和去重

希望本篇博客对你学习 Python 有所帮助。祝你在学习 Python 的过程中取得成功!


目录
打赏
0
1
1
0
19
分享
相关文章
Python frozenset 集合详解:不可变集合的终极指南
frozenset是Python中一个常被忽视但极具价值的不可变集合类型。本文深入解析其本质、操作方法与应用场景,揭示其通过不可变性带来的安全性与性能优势。从底层实现到实战案例,涵盖字典键使用、缓存优化及类型注解等高级场景。同时对比性能数据,提供最佳实践指南,并展望Python 3.11+中的优化。掌握frozenset,可为代码带来更强健性与效率,适合多种特定需求场景。
129 5
Python数据结构:列表、元组、字典、集合
Python 中的列表、元组、字典和集合是常用数据结构。列表(List)是有序可变集合,支持增删改查操作;元组(Tuple)与列表类似但不可变,适合存储固定数据;字典(Dictionary)以键值对形式存储,无序可变,便于快速查找和修改;集合(Set)为无序不重复集合,支持高效集合运算如并集、交集等。根据需求选择合适的数据结构,可提升代码效率与可读性。
|
6月前
|
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
190 2
|
8月前
|
如何使用Python将字典转换为XML
本文介绍了如何使用Python中的`xml.etree.ElementTree`库将字典数据结构转换为XML格式。通过定义递归函数处理字典到XML元素的转换,生成符合标准的XML文档,适用于与旧系统交互或需支持复杂文档结构的场景。示例代码展示了将一个简单字典转换为XML的具体实现过程。
99 1
使用Python计算多个集合的交集详解
使用Python计算多个集合的交集详解
284 1
【Python】字典
【Python】字典
90 1
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
136 0
Python字典操作实现文章敏感词检索
Python字典操作实现文章敏感词检索
129 0
分析、总结Python使用列表、元组、字典的场景
分析、总结Python使用列表、元组、字典的场景
165 0

推荐镜像

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问