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 的过程中取得成功!


相关文章
|
24天前
|
数据采集 编解码 算法
Github | 推荐一个Python脚本集合项目
Github | 推荐一个Python脚本集合项目
|
22天前
|
索引 Python 容器
为什么Python中会有集合set类型?
为什么Python中会有集合set类型?
|
24天前
|
存储 Python 容器
python字典的常用操作方法
python字典的常用操作方法
|
24天前
|
存储 JSON JavaScript
使用 Python 将字典转换为 JSON
【8月更文挑战第27天】
18 2
|
30天前
|
存储 索引 Python
六:《Python基础语法汇总》— 字典和序列操作
本篇文章讲解了对字典元素的索引,以及字典常用的方法和函数;对字典的遍历;字典推导式和关于序列的运算符及方法
16 2
|
22天前
|
存储 数据库 Python
Python 中的字典是什么?
【8月更文挑战第29天】
19 0
|
23天前
|
Python
python在列表、元素、字典、集合和numpy的数组前加上星号 * 是什么含义,以及*args和**kwargs的使用
python在列表、元素、字典、集合和numpy的数组前加上星号 * 是什么含义,以及*args和**kwargs的使用
24 0
|
27天前
|
Python
合并两个 Python 字典
【8月更文挑战第24天】
12 0
|
30天前
|
数据挖掘 数据处理 Python
数据处理新纪元:Python集合内置方法让你告别繁琐,轻松驾驭海量数据!
【8月更文挑战第22天】本文通过电商用户购买数据案例,展示了Python集合在高效数据处理中的应用。首先,利用Pandas读取`purchase_data.csv`文件,并通过内置方法快速概览数据。接着,创建商品ID集合进行数据分析,运用集合的并集、交集及差集等运算揭示用户购买行为模式。最后,借助集合推导式精简创建用户购买商品集合的过程,全方位呈现集合的强大功能。
20 0
|
1月前
|
存储 Python
Python笔记6 字典
本文是作者的Python复习笔记第六篇,专注于Python中的字典(dictionary)数据结构。文中详细解释了字典的创建和基本操作,包括访问、修改、添加和删除键值对的方法。此外,还介绍了如何遍历字典的键值对、键或值,并探讨了字典的高级用法,如字典列表、在字典中存储列表以及字典的嵌套使用。文中通过示例代码演示了字典在实际编程中的应用,帮助读者更好地理解和掌握字典这一重要的数据结构。
36 0