专业编程基础技术教程

网站首页 > 基础教程 正文

36岁学习python第9天:集合set

ccvgpt 2024-08-20 12:59:28 基础教程 6 ℃

集合(set)

集合是无序的,集合中的元素是唯一的

集合的创建

s1 = {"Hello", "world", "china", "world"}
print(s1)
# 输出是无序的,并且去重
# {'world', 'china', 'Hello'}
# 使用列表创建
s2 = set([1, 2, 3, 4])
print(s2)
# 使用元组创建
s3 = set((11, 22, 33, 44))
print(s3)
# 使用range创建
s4 = set(range(10))
print(s4)

运算符及函数

==

36岁学习python第9天:集合set

集合相等


!=

集合不相等


Issuperset

a是否b的超集


Isdisjoint

2个集合是否有交集


&或者intersection

取交集

得到相同的元素

|或者union

取并集

得到全部集合中全部的元素

difference

差集

属于a但不属于b的元素

symmetric_difference

对称差集

只在a和只在b中的元素集合

max()

最大值


min()

最小值


示例
sa = {11, 22, 33, 44}
sb = {111, 222, 333, 444, 33}
sc = {11, 22, 33, 44}

# 比较,结果为True
print(sa == sc)
# 取最大值,结果为44
print(max(sa))
# 取最小值,结果为11
print(min(sa))
# 是否无交集,结果为False
print(sa.isdisjoint(sb))
# 差集,结果为{11,22,44},因为33是共有的
print(sa.difference(sb))
# 交集,结果为{33}
print(sa & sb)

数据结构对比

最近发表
标签列表