Python集合简介

Python 集合(set)是一种无序、可变、元素唯一的数据结构,类似于数学中的集合。它使用大括号 {} 或 set() 函数创建,常用于去重、成员关系测试和集合运算。

主要特性

  • 元素唯一 :自动去除重复值。
  • 无序 :元素没有索引,不支持切片或下标访问。
  • 可变 :可添加或删除元素,但元素本身必须是不可变类型(如整数、字符串、元组),因为集合要求元素可哈希(hashable)。
  • 高效 :成员判断(in)和集合运算的速度非常快。

创建集合

python

复制代码
# 使用大括号
复制代码
s1 = {1, 2, 3}
复制代码
复制代码
# 使用 set() 构造函数,参数为可迭代对象
复制代码
s2 = set([1, 2, 2, 3])   # {1, 2, 3}
复制代码
s3 = set("hello")        # {'h', 'e', 'l', 'o'}
复制代码
复制代码
# 空集合只能用 set(),{} 是空字典
复制代码
empty_set = set()

添加和删除元素

python

复制代码
s = {1, 2, 3}
复制代码
s.add(4)                 # {1, 2, 3, 4}
复制代码
s.update([5, 6])         # 添加多个元素,{1,2,3,4,5,6}
复制代码
s.remove(2)              # 删除元素,若不存在则报错 KeyError
复制代码
s.discard(10)            # 删除元素,若不存在不会报错
复制代码
pop_element = s.pop()    # 随机删除并返回一个元素
复制代码
s.clear()                # 清空集合
相关推荐
tryCbest2 小时前
Java和Python开发项目部署简介
java·开发语言·python
ZTLJQ2 小时前
任务调度的艺术:Python分布式任务系统完全解析
开发语言·分布式·python
阿里嘎多学长2 小时前
2026-03-31 GitHub 热点项目精选
开发语言·程序员·github·代码托管
敏编程2 小时前
一天一个Python库:isodate - 处理 ISO 8601 日期时间格式
python
小只笨笨狗~2 小时前
解决objectSpanMethod与expand共存时展开后表格错位问题
开发语言·javascript·ecmascript
比昨天多敲两行2 小时前
C++ AVL树
开发语言·c++
Bert.Cai2 小时前
Python字面量详解
开发语言·python
Flying pigs~~2 小时前
基于Deepseek大模型API完成文本分类预测功能
java·前端·人工智能·python·langchain·deepseek
Lyyaoo.2 小时前
【JAVA基础面经】深拷贝与浅拷贝
java·开发语言·算法