【Python】序列类型③-集合

简介: 集合是一种无序可变的容器对象集合最大的特点:同一个集合内元素是不允许有重复的,因此集合自带"去重"效果

1.集合(set)简介

集合是一种无序可变的容器对象

集合最大的特点:同一个集合内元素是不允许有重复的,因此集合自带"去重"效果


2.集合的定义

集合的定义有两种方式:


使用{}进行定义,这种方式不能定义空集合.

使用set()进行定义

示例1:


a = {}
b = set()
print(type(a))
print(type(b))


运行截图:

image.png

可以看到虽然代码没有报错,但是结果去不一样. a的类型是字典类型,而b的类型才是集合类型. 这是一个需要注意的地方.如果想要定义一个空集合,只能使用set()的方式进行定义.


因为集合中的元素是不能重复的,所以集合具有自动去重的功能.

示例2:


# 自动去重
a = {1, "python", 2.3, 1, "python", 2.3, 1, "python", 2.3, "python"}
print(a)
print(type(a))
# 输出结果:
# {1, 2.3, 'python'}
#


集合是无序的.注意上面的输出结果的顺序,虽然"python"是在2.3之前的,但是输出时2.3 却在 "python"之前.


集合是不支持下标索引访问 因此集合也没有切片操作.

3.集合的遍历

集合虽然不支持下标索引访问,但是是可以用for循环遍历的


语法: for 临时遍历 in 集合:


a = {1, "python", 2.3}
for elem in a:
    print(elem)
# 1
# 2.3
# python


4.集合的常用方法

以下是集合的一些常用方法:


方法 描述

集合.add(元素) 集合内添加一个元素

集合.remove(元素) 删除集合内指定的元素

集合.pop() 从集合内随机取出一个元素

集合.clear() 清除集合

集合1.difference(集合2) 得到一个新的集合,包含两个集合的差集,原集合不变

集合1.difference_update(集合2) 从集合1中删除集合2中存在的元素,集合1改变,集合2不变

集合1.union(集合2) 得到一个新的集合,内含两个集合的所有元素,原集合不变

len(集合) 统计集合中(去重后)元素的个数


相关文章
|
23小时前
|
存储 Python 容器
Python 基础 笔记(八) 容器---元组、字典、集合
Python 基础 笔记(八) 容器---元组、字典、集合
10 4
|
1天前
|
Python
2024年最新【Python】常见的 数据类型:整数类型,Python面试题整理最新
2024年最新【Python】常见的 数据类型:整数类型,Python面试题整理最新
2024年最新【Python】常见的 数据类型:整数类型,Python面试题整理最新
|
1天前
|
数据采集 关系型数据库 MySQL
2024年最全python进阶系列- 04 集合,2024年最新哈希表 面试
2024年最全python进阶系列- 04 集合,2024年最新哈希表 面试
|
1天前
|
开发工具 Python 容器
2024年最全python进阶系列- 04 集合(1),面试高频问题回答
2024年最全python进阶系列- 04 集合(1),面试高频问题回答
2024年最全python进阶系列- 04 集合(1),面试高频问题回答
|
2天前
|
机器学习/深度学习 运维 算法
python时间序列异常检测ADTK
`adtk`是Python中用于无监督时间序列异常检测的工具包,包含简单算法、特征加工和流程控制。安装使用`pip install adtk`。数据要求为`DatetimeIndex`格式。异常检测包括滑动窗口统计特征、季节性拆解、降维和重构。提供了ThresholdAD、QuantileAD、InterQuartileRangeAD、GeneralizedESDTestAD等离群点检测算法,以及PersistAD和LevelShiftAD检测突变。此外,SeasonalAD用于季节性异常检测,Pipeline可组合多种算法。5月更文挑战第16天
20 5
python时间序列异常检测ADTK
|
3天前
|
Python
两个list集合合并成一个python教程 - 蓝易云
在这两种方法中,加号会创建一个新的列表,而extend方法则会在原地修改列表。
12 0
|
4天前
|
存储 索引 Python
【python学习】列表、元组、字典、集合,秋招是不是得到处面试
【python学习】列表、元组、字典、集合,秋招是不是得到处面试
|
6天前
|
IDE 开发工具 Python
Python类型检查
【5月更文挑战第9天】Python类型检查
12 1
|
6天前
|
Python
Python使用类型注解
【5月更文挑战第7天】
8 2
|
6天前
|
Python
【Python操作基础】——集合
【Python操作基础】——集合