目录
14.symmetric_difference_update
1.clear
描述:删除集合s中的所有元素。
语法:s.clear()
举例:
set_data = {1, 2, 3, 4}
set_data.clear()
print(set_data)
输出:
set()
2.copy
描述:复制生成一个新的集合。
语法 s.copy()
举例:
set_data = {1, 2, 3, 4}
set_data1 = set_data.copy()
print(set_data1)
输出:
{1, 2, 3, 4}
3.difference
返回集合的差集,即返回的集合元素包含在第一个集合中,但不包含在第二个集合(方法的参数)中
difference的用法:
用法: a_set.difference(b_set)
参数: b_set :当前集合需要对比的集合
返回值: 返回原始集合与对比集合的差集 (即a_set与b_set的差集)
举例:
set_data1 = {1, 2, 3}
set_data2 = {2, 3, 4}
print(set_data1.difference(set_data2))
输出:
{1}
4.difference_update
用于通过从另一个集合(set2)中删除set1中不存在的元素和重复的元素来使用此(原始)集合(set1)的元素更新集合。
句法:
set_name1.difference_update(set_name2)
Parameter(s):
参数:set_name2 –另一个/第二个集合的名称,用于查找与set_name1的差异。
返回值:此方法的返回类型为<class'NoneType'> ,它什么也不返回。
举例:
set_data1 = {1, 2, 3}
set_data2 = {2, 3, 4}
set_data1.difference_update(set_data2)
print(set_data1)
输出:
{1}
5.discard
discard() 方法用于移除指定的集合元素。该方法不同于 remove() 方法,因为 remove() 方法在移除一个不存在的元素时会发生错误,而 discard() 方法不会。
语法:set.discard(value)
举例:
set_data1 = {1, 2, 3}
set_data2 = {2, 3, 4}
set_data1.discard(3)
print(set_data1)
输出:
{1, 2}
6.intersection
intersection() 方法用于返回两个或更多集合中都包含的元素,即交集。
intersection() 方法语法:set.intersection(set1, set2 ... etc)
参数:
set1 -- 必需,要查找相同元素的集合
set2 -- 可选,其他要查找相同元素的集合,可以多个,多个使用逗号 , 隔开
返回值
返回一个新的集合。
举例:
set_data1 = {1, 2, 3}
set_data2 = {2, 3, 4}
set1 = set_data1.intersection(set_data2)
print(set1)
输出:
{2, 3}
7.intersection_update
intersection_update() 方法用于获取两个或更多集合中都重叠的元素,即计算交集。
intersection_update() 方法不同于 intersection() 方法,因为intersection() 方法是返回一个新的集合,而intersection_update() 方法是在原始的集合上移除不重叠的元素。
junction_update()的语法为:A.intersection_update(*other_sets)
intersection_update()参数:intersection_update()允许任意数量的参数(集合)。
Intersection_update()返回值:
此方法返回None(意味着,没有返回值)。它仅更新调用intersection_update()方法的集合。
举例:
set_data1 = {1, 2, 3}
set_data2 = {2, 3, 4}
set1 = set_data1.intersection_update(set_data2)
print(set_data1)
输出:
{2, 3}
8.isdisjoint
判断两个集合是否包含相同的元素,如果没有返True ,否则返回False
用法: a_set.isdisjoint(b_set)
参数: b_set
: 与当前集合用来判断的集合
返回值: 返回一个布尔值 True 或 False
举例:
set_data1 = {1, 2, 3}
set_data2 = {2, 3, 4}
set2 = set_data1.isdisjoint(set_data2)
print(set2)
输出:
False
9.issubset
issubset() 方法用于判断集合的所有元素是否都包含在指定集合中,如果是则返回 True,不是则返回 False。
语法 : z=A.issubset(B)
set_data1 = {1, 2, 3, 4}
set_data2 = {2, 3, 4}
set2 = set_data2.issubset(set_data1)
print(set2)
输出:
True
10.issuperset
如果集合A的所有元素都占用作为参数传递的集合B,则issuperset()方法返回True,如果集合A中的所有元素都不存在,则返回false。
这意味着如果A是B的超集,则它返回true;否则,它返回false.
用法: A.issuperset(B)
举例:
set_data1 = {1, 2, 3, 4}
set_data2 = {2, 3, 4}
set4 = set_data1.issuperset(set_data2)
set5 = set_data2.issuperset(set_data1)
print(set4, set5)
输出:
True False
11.pop
描述:随机移除集合s中的一个元素并返回该元素。若集合为空则报错(产生KeyError异常)
语法:s.pop()
举例:
set_data1 = {1, 2, 3, 4}
set_data1.pop()
print(set_data1)
输出:
{2, 3, 4}
12.remove
python中的remove()方法是对集合元素进行删除操作的方法,括号中的参数是指定要删除的元素。该方法并不会删除列表中所有的指定要删除的元素,只会在该元素第一次出现时(从前往后遍历列表元素),将该位置的元素删除,同时返回删除后的新集合。如果存在则删除;如果没找到,则报错。
语法:s.remove(value)
举例:
set_data1 = {1, 2, 3, 4}
set_data1.remove(1)
print(set_data1)
输出:
{2, 3, 4}
13.symmetric_difference
返回对称差集(反向交集),即返回两个集合中不重复的元素集合,即移除两个集合中都存在的元素。
使用 symmetric_difference 函数,合并两个集合时,合并的结果会通过返回值的形式来返回。
语法: s = s1.symmetric_difference(s2)
举例:
set_data1 = {1, 2, 3}
set_data2 = {2, 3, 4}
print(set_data1.symmetric_difference(set_data2))
输出:
{1, 4}
14.symmetric_difference_update
把集合a更新为:集合a与集合b的对称差集。集合a元素被更新改变,但集合b元素不改变。
使用 symmetric_difference_update 函数,合并两个集合时,合并的结果将会更新原来的集合。
语法:s1.symmetric_difference_update(s2)
举例:
set_data1 = {1, 2, 3, 7}
set_data2 = {2, 3, 4, 5}
set3 = set_data1.symmetric_difference_update(set_data2)
print(set3)
print(set_data1)
print(set_data2)
输出:
None
{1, 4, 5, 7}
{2, 3, 4, 5}
15.union
返回多个集合的并集,即包含了所有集合的元素,重复的元素只会出现一次
union的用法
用法: a_set.union(b_set...)
参数: b_set...: 与当前集合对比的1或多个集合,参数也可以传入列表和字典(字典只会传入key)等可循环的数据类型
返回值: 返回原始集合与对比集合的并集
举例:
set_data1 = {1, 2, 3, 7}
set_data2 = {2, 3, 4, 5}
set5 = set_data2.union(set_data1)
print(set5)
输出:
{1, 2, 3, 4, 5, 7}
16.update
描述:将集合a和集合b取并集,并将结果保存在集合a中(即更新集合a),集合b不改变,但是没有返回值。
语法:a.update(b,c,d...) 返回值为空
a.update(x) 返回值为空
举例:
set_data1 = {1, 2, 3, 7}
set_data2 = {2, 3, 4, 5}
set_data1.update(set_data2)
print(set_data1)
输出:
{1, 2, 3, 4, 5, 7}
17.add
描述:如果集合s中不存在元素x,则将元素x添加到集合s中。
语法:s.add(x)
x —— 要添加的元素。集合s已经存在元素x,也不会报错。
举例:
set_data1 = {1, 2, 3}
set_data2 = {2, 3, 4}
set_data1.add(3)
set_data2.add(1)
print(set_data1, set_data2)
输出:
{1, 2, 3} {1, 2, 3, 4}