Python 集合(Sets)3

小万哥
• 阅读 273

Python - 合并集合

在 Python 中,有几种方法可以合并两个或多个集合。您可以使用union()方法,该方法返回一个包含两个集合中所有项的新集合,或使用update()方法,将一个集合中的所有项插入另一个集合中:

示例,union()方法返回一个包含两个集合中所有项的新集合:

set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}

set3 = set1.union(set2)
print(set3)

示例,update()方法将set2中的项插入到set1中:

set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}

set1.update(set2)
print(set1)

保留重复项,intersection_update()方法将保留仅存在于两个集合中的项。

示例,保留仅存在于集合x和集合y中的项:

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}

x.intersection_update(y)

print(x)

intersection()方法将返回一个新的集合,其中仅包含两个集合中都存在的项。

示例,返回一个集合,其中包含仅在集合x和集合y中存在的项:

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}

z = x.intersection(y)

print(z)

保留所有项,但不包括重复项,symmetric_difference_update()方法将保留仅在两个集合中不存在的元素。

示例,保留两个集合中不存在的项:

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}

x.symmetric_difference_update(y)

print(x)

symmetric_difference()方法将返回一个新集合,其中包含两个集合中都不存在的元素。

示例,返回一个集合,其中包含两个集合中都不存在的所有元素:

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}

z = x.symmetric_difference(y)

print(z)

注意:在集合中,True 和 1 被视为相同的值,并被视为重复项:

示例,True 和 1 被视为相同的值:

x = {"apple", "banana", "cherry", True}
y = {"google", 1, "apple", 2}

z = x.symmetric_difference(y)

print(z)

集合方法

Python 提供了一组内置方法,您可以在集合上使用这些方法。

方法 描述
add() 向集合添加元素
clear() 从集合中删除所有元素
copy() 返回集合的副本
difference() 返回包含两个或多个集合之间差异的集合
difference_update() 从这个集合中移除另一个指定集合中包含的项
discard() 删除指定项
intersection() 返回一个集合,该集合是两个其他集合的交集
intersection_update() 删除此集合中不在其他指定集合中存在的项
isdisjoint() 返回两个集合是否具有交集或不具有交集
issubset() 返回另一个集合是否包含此集合或不包含
issuperset() 返回此集合是否包含另一个集合或不包含
pop() 从集合中删除一个元素
remove() 删除指定元素
symmetric_difference() 返回一个集合,其中包含两个集合的对称差异
symmetric_difference_update() 将来自此集合和另一个集合的对称差异插入
union() 返回包含两个或多个集合的并集
update() 使用此集合和其他集合的并集来更新集合

希望这些信息对您有所帮助!如果有任何问题或需要更多解释,请随时提问。

最后

为了方便其他设备和平台的小伙伴观看往期文章,链接奉上:

公众号搜索Let us Coding知乎开源中国CSDN思否掘金InfoQ简书博客园慕课51CTOhelloworld腾讯开发者社区阿里开发者社区

看完如果觉得有帮助,欢迎点赞、收藏关注

点赞
收藏
评论区
推荐文章
徐小夕 徐小夕
3年前
笛卡尔乘积的javascript版实现和应用
笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尓积,又称直积,表示为X×Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。例子假设集合A{a,b},集合B{0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。(https:
Wesley13 Wesley13
3年前
java 11 不可修改集合API
不可修改集合API自Java9开始,Jdk里面为集合(List/Set/Map)都添加了of和copyOf方法,它们两个都用来创建不可变的集合,来看下它们的使用和区别。示例1:varlistList.of("Java","Python","C");varcopyList.copy
执键写春秋 执键写春秋
3年前
Java中集合排序常用的方式
1.集合排序概述1.1集合排序的主要内容:集合中的级别数据类型排序集合中的字符串排序Comparator接口Comparable接口1.2数组排序回顾intarr12,25,22,17,89,22;Arrays.sort(arr);输出:12,17,22,22,25,89Java的Arrays类中有一个sort()方法,该方法是Ar
御弟哥哥 御弟哥哥
3年前
Groovy 集合与闭包
Groovy集合在Groovy提供的所有方便的快捷方式和功能中,最有帮助的一个可能就是内置的集合。回想一下在Java编程中是如何使用集合的—导入java.util类,初始化集合,将项加入集合。这三个步骤都会增加不少代码。而Groovy可以直接在语言内使用集合。在Groovy中,不需要导入专门的类,也不需要初始化对象。集合是语
小万哥 小万哥
1年前
Python 集合(Sets)1
集合集合用于在单个变量中存储多个项。集合是Python中的4种内置数据类型之一,用于存储数据集合,其他3种是列表(List)、元组(Tuple)和字典(Dictionary),它们都具有不同的特性和用途。集合是一种无序、不可更改()、无索引的集合。创建一个
Stella981 Stella981
3年前
Ruby中的each collect map inject
说明:each——连续访问集合的所有元素collect—从集合中获得各个元素传递给block,block返回的结果生成新的集合。map——同collect。inject——遍历集合中的各个元素,将各个元素累积成返回一个值。arr\1,2,3\1)arr2arr.each{|elem
Wesley13 Wesley13
3年前
Java中数组与集合的相互转换
数组与List的相互转换List转数组:采用集合的toArray()方法数组转List:采用Arrays的asList()方法数组转换为集合注意:在数组转集合的过程中,要注意是否使用了视图的方式直接返回数组中的数据。以Arrays.asList()为例,它把数组转换成集合时,不能使用其修改集
Wesley13 Wesley13
3年前
Union Find
并查集是在各个不相交集合中查找某元素存在否,可以接近常数级查找例如,图的连通性,最近公共祖先等问题。一般用森林数组实现。一般有2个操作,查找(find)和合并(union)查找:从集合中查找元素x是否存在。合并:如果2个集合不想交则可以合并操作,一般方法是高度低的合并到高度高的。初始化每个元素都可以是一个单独的集合,然后不断引入关系来合并他
小万哥 小万哥
1年前
Python 集合(Sets)2
访问项您无法通过引用索引或键来访问集合中的项。但是,您可以使用for循环遍历集合项,或者使用in关键字检查集合中是否存在指定的值。示例,遍历集合并打印值:Pythonthisset"apple","banana","cherry"forxinthisset
小万哥 小万哥
1年前
高效使用 PyMongo 进行 MongoDB 查询和插入操作
插入到集合中:要将记录(在MongoDB中称为文档)插入到集合中,使用insertone()方法。insertone()方法的第一个参数是一个包含文档中每个字段的名称和值的字典。pythonimportpymongomyclientpymongo.Mong