集合(set)是一个无序的不重复元素序列。<br>可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
内置方法
add():为集合添加元素
fruits = {"apple", "banana", "cherry"}<br>fruits.add("orange") <br>print(fruits)<br>{'apple', 'banana', 'orange', 'cherry'}<br>
clear():移除集合中的所有元素
fruits = {"apple", "banana", "cherry"}<br>fruits.clear()<br>print(fruits)<br>set()<br>
copy():拷贝一个集合
fruits = {"apple", "banana", "cherry"}<br>x = fruits.copy()<br>print(x)<br>{'cherry', 'banana', 'apple'}<br>
difference():返回多个集合的差集
x = {"apple", "banana", "cherry"}<br>y = {"google", "microsoft", "apple"}<br> <br>z = x.difference(y) <br> <br>print(z)<br>{'cherry', 'banana'}<br>
difference_update():移除集合中的元素,该元素在指定的集合也存在。
x = {"apple", "banana", "cherry"}<br>y = {"google", "microsoft", "apple"}<br> <br>x.difference_update(y) <br> <br>print(x)<br>{'cherry', 'banana'}<br>
discard():删除集合中指定的元素
fruits = {"apple", "banana", "cherry"}<br> <br>fruits.discard("banana") <br> <br>print(fruits)<br>{'cherry', 'apple'}<br>
intersection():返回集合的交集
x = {"apple", "banana", "cherry"}<br>y = {"google", "runoob", "apple"}<br>z = x.intersection(y) <br> <br>print(z)<br>{'apple'}<br>
intersection_update():返回集合的交集。
x = {"apple", "banana", "cherry"}<br>y = {"google", "runoob", "apple"}<br> <br>x.intersection_update(y) <br> <br>print(x)<br>{'apple'}<br>
isdisjoint():判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。
x = {"apple", "banana", "cherry"}<br>y = {"google", "runoob", "facebook"}<br>z = x.isdisjoint(y) <br> <br>print(z)<br>True<br>
issubset():判断指定集合是否为该方法参数集合的子集。
x = {"a", "b", "c"}<br>y = {"f", "e", "d", "c", "b", "a"}<br>z = x.issubset(y) <br> <br>print(z)
issuperset():判断该方法的参数集合是否为指定集合的子集
x = {"f", "e", "d", "c", "b", "a"}<br>y = {"a", "b", "c"}<br> <br>z = x.issuperset(y) <br> <br>print(z)<br>True<br>
pop():随机移除元素
fruits = {"apple", "banana", "cherry"}<br> <br>fruits.pop() <br> <br>print(fruits)<br>{'apple', 'banana'}<br>
remove():移除指定元素
fruits = {"apple", "banana", "cherry"}<br> <br>fruits.remove("banana") <br> <br>print(fruits)<br>{'cherry', 'apple'}<br>
symmetric_difference():返回两个集合中不重复的元素集合。
x = {"apple", "banana", "cherry"}<br>y = {"google", "runoob", "apple"}<br> <br>z = x.symmetric_difference(y) <br> <br>print(z)<br>{'google', 'cherry', 'banana', 'runoob'}<br>
symmetric_difference_update():移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。
x = {"apple", "banana", "cherry"}<br>y = {"google", "runoob", "apple"}<br> <br>x.symmetric_difference_update(y) <br> <br>print(x)<br>{'google', 'cherry', 'banana', 'runoob'}<br>
union():返回两个集合的并集
x = {"apple", "banana", "cherry"}<br>y = {"google", "runoob", "apple"}<br> <br>z = x.union(y) <br> <br>print(z)<br>{'cherry', 'runoob', 'google', 'banana', 'apple'}<br>
update():给集合添加元素
x = {"apple", "banana", "cherry"}<br>y = {"google", "runoob", "apple"}<br> <br>x.update(y) <br> <br>print(x)<br>{'banana', 'apple', 'google', 'runoob', 'cherry'}<br>
集合的运算
交集(&)
s = {1,2,3,4,5}<br>s2 = {3,4,5,6,7}<br>result = s & s2 # {3, 4, 5}<br>
并集(|)
s = {1,2,3,4,5}<br>s2 = {3,4,5,6,7}<br>result = s | s2 # {1,2,3,4,5,6,7}<br>
叉集(-)
s = {1,2,3,4,5}<br>s2 = {3,4,5,6,7}<br>result = s - s2 # {1, 2}<br>
异或集(ˆ)
s = {1,2,3,4,5}<br>s2 = {3,4,5,6,7}<br>result = s ^ s2 # {1, 2, 6, 7}<br>
子集(<=)<br>真子集(<)
a = {1,2,3}<br>b = {1,2,3,4,5}<br><br>result = a <= b # True<br>result = {1,2,3} <= {1,2,3} # True<br>result = {1,2,3,4,5} <= {1,2,3} # False<br><br>result = {1,2,3} < {1,2,3} # False<br>result = {1,2,3} < {1,2,3,4,5} # True<br>
超集(>=)<br>真超集(>)
子主题