集合是Python的一种数据类型,集合是一个可变容器。常用于列表的去重。
{}
创建集合,集合元素使用,
隔开s = {1, 2}
注意:使用{}
不可以创建空集合,因为创建出来的是一个字典。
s = set()
s1 = {1, 2, 3}
s2 = {2, 3, 4}
print(s1 & s2)
s1 = {1, 2, 3}
s2 = {2, 3, 4}
print(s1 | s2)
s1 = {1, 2, 3}
s2 = {2, 3, 4}
print(s1 - s2)
# 生成属于s1但不属于s2的所有元素
s1 = {1, 2, 3}
s2 = {2, 3, 4}
print(s1 - s2)
还有一些基本的运算,可以查看Python运算符进行学习
s = {11, 22, 44, 6, 0, 10}
print(len(s))
print(max(s))
print(min(s))
print(sum(s))
s = {11, 0}
boolean = any(s)
print(boolean)
s = {11, 22, 33, "string"}
boolean = all(s)
print(boolean)
s = {11, 22, 33}
s.add(44)
print(s)
s = {11, 22, 33}
s.clear()
print(s)
s = {11, 22, 33, 44, 55}
s.remove(11)
print(s)
s = {11, 22, 33, 44, 55}
s.pop()
print(s)
s1 = {11, 22, 33, 44}
s2 = {55, 66, 77, 22, 44, 88}
print(s1.difference(s2))
s1 = {11, 22, 33, 44}
s2 = {55, 66, 77, 22, 44, 88}
s1.difference_update(s2)
print(s1)
print(s2)
s1 = {11, 22, 33, 44}
s2 = {55, 66, 77, 22, 44, 88}
boolean = s1.isdisjoint(s2)
print(boolean)
s = {11, 22, 33, 44, 55}
for i in s:
print(i)
集合推导式允许使用可迭代对象生成集合的表达式
语法:
{表达式 for 变量 in 可迭代对象 if 条件}
l = [1, 2, 3, 4, 5, 6]
s = {x for x in l if x %2 == 0}
print(s)
list1 = [11, 22, 33, 11, 22, 11, 44, 11]
print(set(list1))
创建固定集合- 使用构造函数(frozenset)
fs = frozenset()
fs_num = frozenset([1, 2, 3, 4])
由于固定集合在实际开发中,用到的不是很多,所以没有展开详细教程。
原文:https://www.cnblogs.com/liudemeng/p/12218549.html