Python 集合 union()函数使用详解,Python合并集合

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》

union函数使用详解

union() 可以「合并」集合

语法

python 复制代码
set.union( set )

参数

  • set :(必选)需要合并的集合

返回值

  • 返回一个合并后的新集合

实例:合并两个集合

python 复制代码
set1 = {1, 2, 3}
set2 = {4, 5, 6}

new_set = set1.union(set2)

print(new_set)

输出:

bash 复制代码
{1, 2, 3, 4, 5, 6}

从伪源码(Python内置函数看不到源码,只提供函数描述)可以看到, union() 可以返回多个集合的并集作为一个新集合。

1、合并多个集合

union() 可以接收多个参数,这意味着,我们可以同时合并「多个集合」。

python 复制代码
set1 = {1, 2, 3}
set2 = {4, 5, 6}
set3 = {7, 8, 9}

new_set = set1.union(set2, set3)

print(new_set)

输出:

bash 复制代码
{1, 2, 3, 4, 5, 6, 7, 8, 9}

2、合并其他类型

union() 接收的参数是可迭代类型(iterable ),这意味着我们可以将集合与其他可迭代类型合并。

2.1、合并字符串

「字符串」时可迭代类型,可以跟集合合并。

python 复制代码
set1 = {1, 2, 3}

new_set = set1.union('abc')

print(new_set)

输出:

bash 复制代码
{1, 2, 3, 'a', 'c', 'b'}

2.2、合并列表

「列表」也是可迭代类型,可以跟集合合并。

python 复制代码
set1 = {1, 2, 3}
list1 = [4, 5, 6]

new_set = set1.union(list1)

print(new_set)

输出:

bash 复制代码
{1, 2, 3, 4, 5, 6}

2.3、合并元组

「元组」也是可迭代类型,可以跟集合合并。

python 复制代码
set1 = {1, 2, 3}
tuple1 = (4, 5, 6)

new_set = set1.union(tuple1)

print(new_set)

输出:

bash 复制代码
{1, 2, 3, 4, 5, 6}

2.4、合并字典

「字典」也是可迭代类型,可以跟集合合并;与其他类型不同的是,字典只合并键,不合并值。

python 复制代码
set1 = {1, 2, 3}
dict1 = {'key1': 1, 'key2': 2}

new_set = set1.union(dict1)

print(new_set)

输出:

bash 复制代码
{1, 2, 3, 'key1', 'key2'}

2.5、合并bytes类型

「bytes」也是可迭代类型,可以跟集合合并;但bytes是字节流,字符会转换后再合并。

python 复制代码
set1 = {1, 2, 3}
bytes1 = b'abc'

new_set = set1.union(bytes1)

print(new_set)

输出:

c 复制代码
{1, 2, 3, 97, 98, 99}

2.6、数值不能合并

「数值」不可迭代,不能跟集合合并,否则会报错 TypeError: 'int' object is not iterable

python 复制代码
set1 = {1, 2, 3}

new_set = set1.union(11)

输出:

相关推荐
喵手6 小时前
Python爬虫实战:京东/淘宝搜索多页爬虫实战 - 从反爬对抗到数据入库的完整工程化方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·京东淘宝页面数据采集·反爬对抗到数据入库·采集结果csv导出
callJJ6 小时前
Spring AI 文本聊天模型完全指南:ChatModel 与 ChatClient
java·大数据·人工智能·spring·spring ai·聊天模型
B站_计算机毕业设计之家7 小时前
猫眼电影数据可视化与智能分析平台 | Python Flask框架 Echarts 推荐算法 爬虫 大数据 毕业设计源码
python·机器学习·信息可视化·flask·毕业设计·echarts·推荐算法
是店小二呀7 小时前
CANN 异构计算的极限扩展:从算子融合到多卡通信的统一优化策略
人工智能·深度学习·transformer
PPPPPaPeR.7 小时前
光学算法实战:深度解析镜片厚度对前后表面折射/反射的影响(纯Python实现)
开发语言·python·数码相机·算法
冻感糕人~7 小时前
收藏备用|小白&程序员必看!AI Agent入门详解(附工业落地实操关联)
大数据·人工智能·架构·大模型·agent·ai大模型·大模型学习
JaydenAI7 小时前
[拆解LangChain执行引擎] ManagedValue——一种特殊的只读虚拟通道
python·langchain
予枫的编程笔记7 小时前
【Linux入门篇】Ubuntu和CentOS包管理不一样?apt与yum对比实操,看完再也不混淆
linux·人工智能·ubuntu·centos·linux包管理·linux新手教程·rpm离线安装
陈西子在网上冲浪7 小时前
当全国人民用 AI 点奶茶时,你的企业官网还在“人工建站”吗?
人工智能
victory04317 小时前
hello_agent第九章总结
人工智能·agent