「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》
union函数使用详解
- 1、合并多个集合
- 2、合并其他类型
- 2.1、合并字符串
- 2.2、合并列表
- 2.3、合并元组
- 2.4、合并字典
- 2.5、合并bytes类型
- 2.6、数值不能合并
union() 可以「合并」集合
语法
set.union( set )
参数
- set :(必选)需要合并的集合
返回值
- 返回一个合并后的新集合
实例:合并两个集合
set1 = {1, 2, 3}
set2 = {4, 5, 6}new_set = set1.union(set2)print(new_set)
输出:
{1, 2, 3, 4, 5, 6}
从伪源码(Python内置函数看不到源码,只提供函数描述)可以看到, union() 可以返回多个集合的并集作为一个新集合。
1、合并多个集合
union() 可以接收多个参数,这意味着,我们可以同时合并「多个集合」。
set1 = {1, 2, 3}
set2 = {4, 5, 6}
set3 = {7, 8, 9}new_set = set1.union(set2, set3)print(new_set)
输出:
{1, 2, 3, 4, 5, 6, 7, 8, 9}
2、合并其他类型
union() 接收的参数是可迭代类型(iterable ),这意味着我们可以将集合与其他可迭代类型合并。
2.1、合并字符串
「字符串」时可迭代类型,可以跟集合合并。
set1 = {1, 2, 3}new_set = set1.union('abc')print(new_set)
输出:
{1, 2, 3, 'a', 'c', 'b'}
2.2、合并列表
「列表」也是可迭代类型,可以跟集合合并。
set1 = {1, 2, 3}
list1 = [4, 5, 6]new_set = set1.union(list1)print(new_set)
输出:
{1, 2, 3, 4, 5, 6}
2.3、合并元组
「元组」也是可迭代类型,可以跟集合合并。
set1 = {1, 2, 3}
tuple1 = (4, 5, 6)new_set = set1.union(tuple1)print(new_set)
输出:
{1, 2, 3, 4, 5, 6}
2.4、合并字典
「字典」也是可迭代类型,可以跟集合合并;与其他类型不同的是,字典只合并键,不合并值。
set1 = {1, 2, 3}
dict1 = {'key1': 1, 'key2': 2}new_set = set1.union(dict1)print(new_set)
输出:
{1, 2, 3, 'key1', 'key2'}
2.5、合并bytes类型
「bytes」也是可迭代类型,可以跟集合合并;但bytes是字节流,字符会转换后再合并。
set1 = {1, 2, 3}
bytes1 = b'abc'new_set = set1.union(bytes1)print(new_set)
输出:
{1, 2, 3, 97, 98, 99}
2.6、数值不能合并
「数值」不可迭代,不能跟集合合并,否则会报错 TypeError: ‘int’ object is not iterable
set1 = {1, 2, 3}new_set = set1.union(11)
输出: