Python-基础知识学习之集合

集合是一种无序且元素唯一的容器,它比较像一个字典,但是没有值,只有键。

可以通过两种方式创建,一种是set函数,另一种是大括号语法创建:

a = set([2, 2, 2, 1, 3, 3])
print(a)
#打印
    {1, 2, 3}

b = {2, 2, 2, 1, 3, 3}
print(a)
#打印
    {1, 2, 3}


#集合的操作可以分为:联合、交集、差集、对称差集:
a = {1, 2, 3, 4, 5}
b = {3, 4, 5, 6, 7, 8}

#联合=================
a.union(b)
print(a)
#打印
    {1, 2, 3, 4, 5, 6, 7, 8}


print(a|b)
#打印
    {1, 2, 3, 4, 5, 6, 7, 8}

#交集=================
a.intersection(b)
print(a)
#打印
    {3, 4, 5}

print(a&b)
#打印
    {3, 4, 5}

下面列出集合操作的函数:

a.add(x)    #将元素x加入集合a
a.clear()    #将集合重置为空,清空所有元素
a.remove(x)    #从集合a移除元素x
a.pop()    #移除任意元素,如果集合是空的抛出keyError
a.union(b)    # a|b 将a和b集合的所有不同元素合并
a.update(b)    # a|=b 将a的内容设置为a和b的并集
a.intersection(b)    #a&b 取出a、b中同时存在的元素
a.intersection_update(b)    #a&=b 将a的内容设置a和b的交集
a.difference(b)    #a-b 取出在a不在b中的元素
a.difference_update(b)    #a-=b 将a的内容设置为在a不在b的元素
a.symmetric_difference(b)    #a^b 所有在a或b中,但不同时在a、b中的元素
a.symmetric_difference_update(b) #a^=b 将a的内容设置为所有在a或b中,但不同时在a、b中的元素
a.issubset(b)    #如果a包含于b返回True
a.issuperset(b)    #如果a包含b返回True
a.isdisjoint(b)    #a、b没有交集返回True

注意:集合的元素必须是不可变的,如果想要包含列表的元素,可以将列表转化成元组

当且仅当两个集合的内容一模一样时,两个集合才想等

猜你喜欢

转载自blog.csdn.net/pz789as/article/details/93761313