13.从入门到精通:Python 集合 集合的基本操作 1、添加元素 2、移除元素 3、计算集合元素个数 4、清空集合 5、判断元素是否在集合中存在 集合内置方法完整列表

简介: 13.从入门到精通:Python 集合 集合的基本操作 1、添加元素 2、移除元素 3、计算集合元素个数 4、清空集合 5、判断元素是否在集合中存在 集合内置方法完整列表

Python 集合

在Python中,集合是一种无序、不重复的数据类型。集合通常用于去重、检查成员资格等操作。Python提供了内置的set类型来实现集合,可以使用花括号{}或set()函数来创建一个集合。

使用花括号创建集合:

my_set = {'apple', 'banana', 'orange'}
print(my_set)  # 输出 {'banana', 'orange', 'apple'}

使用set()函数创建集合:

my_set = set(['apple', 'banana', 'orange'])
print(my_set)  # 输出 {'banana', 'orange', 'apple'}

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

my_set = {'apple', 'banana', 'orange'}
my_set.add('pear')
print(my_set)  # 输出 {'banana', 'orange', 'pear', 'apple'}

可以使用remove()方法从集合中删除元素:

my_set = {'apple', 'banana', 'orange'}
my_set.remove('banana')
print(my_set)  # 输出 {'orange', 'apple'}

可以使用in运算符来检查元素是否属于集合:

my_set = {'apple', 'banana', 'orange'}
print('apple' in my_set)  # 输出 True
print('pear' in my_set)  # 输出 False

需要注意的是,集合中的元素必须是不可变的对象,因为集合的实现也是基于哈希表的。如果集合中包含可变对象,例如列表或字典,将引发TypeError异常。


集合的基本操作

1、添加元素

在Python中,可以使用以下方法向字典中添加元素:

  • 使用键来添加元素:使用方括号[]和赋值符号=,将新的键值对添加到字典中。
  • 使用update()方法:使用update()方法将一个字典中的键值对添加到另一个字典中。

下面是这两种方法的示例:

# 使用键来添加元素
my_dict = {'key1': 'value1', 'key2': 'value2'}
my_dict['key3'] = 'value3'
print(my_dict) # 输出:{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
使用update()方法添加元素
my_dict = {'key1': 'value1', 'key2': 'value2'}
new_dict = {'key3': 'value3', 'key4': 'value4'}
my_dict.update(new_dict)
print(my_dict) # 输出:{'key1': 'value1', 'key2': 'value2', 'key3': 'value3', 'key4': 'value4'}

使用这些方法,可以方便地向字典中添加新的键值对。


2、移除元素

在Python中,可以使用以下方法从字典中移除元素:

  • 使用del语句:使用del语句和键来删除字典中的元素。
  • 使用pop()方法:使用pop()方法和键来删除字典中的元素,并返回该元素的值。
  • 使用clear()方法:使用clear()方法删除字典中的所有元素。

下面是这三种方法的示例:

# 使用del语句删除元素
my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
del my_dict['key2']
print(my_dict) # 输出:{'key1': 'value1', 'key3': 'value3'}
使用pop()方法删除元素
my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
value = my_dict.pop('key2')
print(my_dict) # 输出:{'key1': 'value1', 'key3': 'value3'}
print(value) # 输出:value2
使用clear()方法删除所有元素
my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
my_dict.clear()
print(my_dict) # 输出:{}

使用这些方法,可以方便地从字典中移除元素。


3、计算集合元素个数

在Python中,可以使用len()函数来计算集合中元素的个数。例如

my_set = {'apple', 'banana', 'orange'}
print(len(my_set))  # 输出 3

需要注意的是,如果集合中有重复的元素,它们只会被计算一次。


4、清空集合

在Python中,可以使用以下方法清空集合:
使用clear()方法:使用clear()方法删除集合中的所有元素。

下面是这种方法的示例:

# 使用clear()方法清空集合
my_set = {1, 2, 3, 4, 5}
my_set.clear()
print(my_set) # 输出:set()

使用这种方法,可以方便地清空集合中的所有元素。


5、判断元素是否在集合中存在

在Python中,可以使用in运算符来判断一个元素是否在集合中存在。例如:

my_set = {'apple', 'banana', 'orange'}
print('apple' in my_set)  # 输出 True
print('pear' in my_set)  # 输出 False

需要注意的是,in运算符的时间复杂度是O(1),因此它非常适合用于集合中元素的查找操作。


集合内置方法完整列表

Python中的集合类型内置了多个方法,包括:

add():向集合中添加元素。


clear():从集合中删除所有元素


copy():返回集合的副本。


difference():返回一个包含两个集合差集元素的新集合。


difference_update():从原集合中删除另一个集合中的元素。


discard():从集合中删除指定元素,如果元素不存在,则不执行任何操作。


intersection():返回两个集合的交集元素。


intersection_update():将原集合中的元素更新为两个集合的交集元素。


isdisjoint():判断两个集合是否没有交集。


issubset():判断一个集合是否为另一个集合的子集。


issuperset():判断一个集合是否为另一个集合的超集。


pop():随机删除并返回集合中的一个元素。


remove():从集合中删除指定元素,如果元素不存在,则引发KeyError异常。


symmetric_difference():返回两个集合的对称差集元素。


symmetric_difference_update():将原集合中的元素更新为两个集合的对称差集元素。


union():返回两个集合的并集元素。


update():将原集合中的元素更新为两个集合的并集元素。


这些方法可以对集合进行各种操作,具体用法可以参考Python官方文档。


相关文章
|
10月前
|
Java 数据处理 索引
(Pandas)Python做数据处理必选框架之一!(二):附带案例分析;刨析DataFrame结构和其属性;学会访问具体元素;判断元素是否存在;元素求和、求标准值、方差、去重、删除、排序...
DataFrame结构 每一列都属于Series类型,不同列之间数据类型可以不一样,但同一列的值类型必须一致。 DataFrame拥有一个总的 idx记录列,该列记录了每一行的索引 在DataFrame中,若列之间的元素个数不匹配,且使用Series填充时,在DataFrame里空值会显示为NaN;当列之间元素个数不匹配,并且不使用Series填充,会报错。在指定了index 属性显示情况下,会按照index的位置进行排序,默认是 [0,1,2,3,...] 从0索引开始正序排序行。
749 0
|
11月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
666 1
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
419 2
|
11月前
|
存储 JSON 算法
Python集合:高效处理无序唯一数据的利器
Python集合是一种高效的数据结构,具备自动去重、快速成员检测和无序性等特点,适用于数据去重、集合运算和性能优化等场景。本文通过实例详解其用法与技巧。
339 0
|
11月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
1686 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
10月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
414 4
|
11月前
|
机器学习/深度学习 数据采集 并行计算
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
1080 2
|
11月前
|
算法 调度 决策智能
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
326 0
|
机器学习/深度学习 数据采集 TensorFlow
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
638 0
|
11月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1726 102

推荐镜像

更多