当前位置: 首页 > news >正文

Python 集合Set简介

集合Set

集合(Set)是Python中的一种无序、可变的容器类型,用于存储唯一的、不可重复的元素。

特点
  • 无序
  • 元素唯一性
  • 可变性
  • 只能包含不可变元素(可哈希的)
创建集合
# 从列表创建
set_from_list = set([1, 2, 2, 3, 3, 3])
print(set_from_list)  # 输出: {1, 2, 3}# 从字符串创建(每个字符成为单独元素)
set_from_string = set("hello")
print(set_from_string)  # 输出: {'h', 'e', 'l', 'o'}# 从元组创建
set_from_tuple = set((1, 2, 3, 2, 1))
print(set_from_tuple)  # 输出: {1, 2, 3}# 从范围创建
set_from_range = set(range(5))
print(set_from_range)  # 输出: {0, 1, 2, 3, 4}# 从集合推导式
# 创建平方数的集合
squares = {x*x for x in range(6)}
print(squares)  # 输出: {0, 1, 4, 9, 16, 25}# 从列表创建唯一元素的集合(带条件)
numbers = [1, 2, 3, 4, 5, 5, 4, 3, 2, 1]
even_squares = {x*x for x in numbers if x % 2 == 0}
print(even_squares)  # 输出: {16, 4}
添加元素
# add(element)
my_set = {1, 2, 3}
my_set.add(4)
print(my_set)  # 输出: {1, 2, 3, 4}my_set.add(1)  # 添加已存在的元素,集合不变
print(my_set)  # 输出: {1, 2, 3, 4}# update(iterable)
my_set.update([3, 4, 5, 6]) # 添加多个元素
print(my_set)  # 输出: {1, 2, 3, 4, 5, 6}my_set.update([7, 8], (9, 10)) # 同时添加多个可迭代对象
print(my_set)  # 输出: {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
删除元素
# remove(element) 删除指定元素,如果元素不存在则报错
my_set = {1, 2, 3}
my_set.remove(3)
print(my_set)  # 输出: {1, 2}my_set.remove(3)  # 会报错:KeyError: 3# discard(element) 删除指定元素,如果元素不存在则不报错
my_set.discard(3)  # 不会报错# pop()  # 随机删除并返回一个元素(因为集合无序)
element = my_set.pop()# clear() 清空集合
my_set.clear()
print(my_set)  # 输出: set()
集合运算
  • 并集
# 返回两个集合的并集
set1 = {1, 2, 3}
set2 = {3, 4, 5}
result1 = set1.union(set2)
result2 = set1 | set2
print(result1)  # 输出: {1, 2, 3, 4, 5}
print(result2)  # 输出: {1, 2, 3, 4, 5}
  • 交集
# 返回两个集合的交集
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
result1 = set1.intersection(set2)
result2 = set1 & set2
print(result1)  # 输出: {3, 4}
print(result2)  # 输出: {3, 4}
  • 差集
# 返回集合的差集
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
result1 = set1.difference(set2)
result2 = set1 - set2
print(result1)  # 输出: {1, 2}
print(result2)  # 输出: {1, 2}
http://www.jsqmd.com/news/39325/

相关文章:

  • 安装WIndows11时绕过微软账户强制要求,使用本地账户登录
  • 2025年RS485噪声监测仪定做厂家权威推荐榜单:噪声检测仪/工业声音传感器/噪声检测传感器源头厂家精选
  • 配置Centos/Ubuntu免密登录
  • HarmonyOS Next 快速参考手册 - 实践
  • 国标GB28181算法算力平台EasyGBS:构筑公安数字化安防的“核心枢纽”
  • 2025年11月重庆眼镜店最新推荐,覆盖青少年配眼镜/儿童配眼镜/老年人配眼镜/全人群配镜需求
  • 4、管理用户
  • 2、聚合查询(聚合函数)
  • 字节新动作!豆包编程模型 Doubao-Seed-Code 正式亮相,AI 写项目时代来了
  • 吴恩达深度学习课程二: 改善深层神经网络 第二周:优化算法(六)课后习题和代码实践
  • 2025年北京物业合作公司权威推荐榜单:医院物业加盟/学校物业加盟/物业加盟合作伙伴精选
  • 2025年重庆配眼镜标杆商家最新推荐:雷曼森眼镜,青少年配眼镜|儿童配眼镜|老年人配眼镜|个性化验配新标准
  • 测试岗位所需的工作能力
  • 2025年PVC塑料桥架批发厂家权威推荐榜单:复合材料桥架/玻璃钢桥架/聚氨酯桥架源头厂家精选
  • 3、分组查询 GROUP BY
  • 2025年节能环保过滤器制造厂权威推荐榜单:柴油节能减排/重卡节能环保/锅炉过滤器源头厂家精选
  • 2025年工业制冷品牌推荐排行榜:专业评测与选择指南
  • 2025年国内工业制冷品牌十大厂家权威推荐排行榜
  • AI知识库搭建新纪元:5分钟构建企业智慧大脑
  • Day20标准流
  • 2025年阜阳民事纠纷律师排行榜前十强权威推荐
  • 2025超级简单jenkins部署!保姆级教学!
  • 2025年阜阳民事纠纷律师排行榜Top10:专业选择指南
  • 2025年阜阳民事纠纷律师综合实力排行榜前十强
  • 闭包装饰器
  • 详细介绍:【动态规划】斐波那契数列模型
  • 分布式事务Seata
  • 微算法科技(NASDAQ MLGO)通过容量证明(PoC)构建全球存储资源池,为Web3应用提供低成本、抗审查的数据存储服务
  • UI自动化维护成本高?一个Dify工作流,实现自愈式测试,告别脚本脆弱性
  • 2025年火源预警摄像机供应商权威推荐:森林防火前端摄像机/热源监测摄像机/林火智能识别摄像机源头厂家精选