Python Set集合详解:创建、操作与遍历

夏知夏
夏知夏
发布时间:2026-10-13| 2人浏览过
原创

本文详细介绍Python中Set集合的特性与用法。Set是一种无序且无重复元素的集合,具备自动去重功能。文章涵盖Set的创建语法、add与update添加元素的方法、remove删除元素、遍历技巧以及交集并集运算,帮助开发者掌握集合在数据处理中的应用。

Python Set集合概述与创建

本文通过实例深入解析Python中的Set集合数据类型,旨在为读者提供清晰的参考与学习材料。

Set集合基础

1. 概述

Set在结构上与Dict相似,但Set仅包含key而存储value。它与Dict的核心区别在于Set不保存键值对中的值。

核心特性:Set是一个无序且不含重复元素的集合,具备自动去重的功能。

2. Set的创建方式

创建语法如下:


set1 = set([1, 2, 3, 4, 5])

需要注意的是,创建Set时需要传入list、tuple或dict作为输入集合。若输入中包含重复元素,Set会自动过滤掉重复项。


s1 = set([1, 2, 3, 4, 5])
print(s1)

运行示例:

{1, 2, 3, 4, 5}

Set集合的增删改查操作

3. Set的常用操作

3.1 使用add()添加元素

1. 尝试添加重复元素不会报错,但不会改变集合内容。

2. add()接受的元素不能是list或dict,因为这些是可变的对象。


s1 = set([1, 2, 3, 4, 5])
s1.add(6)
s1.add((2, 3, 4))
print(s1)

执行结果:

{1, 2, 3, 4, 5, 6, (2, 3, 4)}

3.2 使用update()更新集合

功能说明:用于插入整个list、tuple,或将字符串拆解为单个字符插入。

注意:不能直接插入整数数字。


s1 = set([1, 2, 3, 4, 5])
s1.update([4,"anam","hha"])
s1.update("hello")
print(s1)

执行结果:

{1, 2, 3, 4, 5, 'anam', 'l', 'o', 'h', 'e', 'hha'}

3.3 使用remove()删除元素

功能说明:用于从集合中删除指定元素。


s1 = set([1, 2, 3, 4, 5])
s1.remove(3)
print(s1)

输出示例:

{1, 2, 4, 5}

Set的遍历与集合运算

3.4 遍历集合元素

基本语法:

for i in set : print(i)

注意:由于Set是无序的,无法通过下标索引获取元素。

for index, data in enumerate(set): print(index, data)

可以使用上述方式强制获取遍历时的索引下标。


s1 = set([1, 2, 3, 4, 5])
for i in s1:
  print(i)
for index,data in enumerate(s1):
  print(index, data)

输出示例:

1 2 3 4 5 0 1 1 2 2 3 3 4 4 5

3.5 交集与并集运算

相关语法:

交集 newest = set1 & set2 并集 newest = set1 | set2


s1 = set([1, 2, 3, 4, 5])
s2 = set([4, 5, 6, 7])
s3 = s1 & s2
s4 = s1 | s2
print(s3)
print(s4)

运算结果:

{4, 5} {1, 2, 3, 4, 5, 6, 7}

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python列表(list)操作技巧总结》、《Python字典操作技巧汇总》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。