python集合的相关操作

- 集合:可变数据类型,里面的元素是不可变数据类型,且无序与不可重复。

1.增

set1 = {'alex','wusir','ritian','egon','barry'}
set1.add('女神')
set1.update('abc')
print(set1)

{‘barry’, ‘ritian’, ‘wusir’, ‘女神’, ‘a’, ‘alex’, ‘c’, ‘egon’, ‘b’}

2.删除

set1.pop()#随机删除,有返回值
print (set1)

{‘ritian’, ‘wusir’, ‘女神’, ‘a’, ‘alex’, ‘c’, ‘egon’, ‘b’}

set1.remove('alex')
print (set1)

{‘ritian’, ‘wusir’, ‘女神’, ‘a’, ‘c’, ‘egon’, ‘b’}

set1.clear()#清空集合
del set1#删除集合

3.查

set1 = {'alex','wusir','ritian','egon','barry'}
for i in set1:
    print (i)

barry
ritian
wusir
alex
egon

4.集合运算操作
(1)交集

set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
print (set1&set2)
print (set1.intersection(set2))

{4, 5}
{4, 5}

(2)并集

print (set1|set2)
print (set1.union(set2))

{1, 2, 3, 4, 5, 6, 7, 8}
{1, 2, 3, 4, 5, 6, 7, 8}

(3)反交集

print (set1^set2)
print (set1.symmetric_difference(set2))

{1, 2, 3, 6, 7, 8}
{1, 2, 3, 6, 7, 8}

(4)差集

print (set1-set2)
print (set2-set1)

{1, 2, 3}
{8, 6, 7}

(5)子集与超集

set1 = {1,2,3}
set2 = {1,2,3,4,5}
print (set1<set2)#set1是set2的子集
print (set2>set1)#set2是set1的超集

True
False

5.frozenset不变集合

s = frozenset('barry')
print (s,type(s))

frozenset({‘r’, ‘a’, ‘y’, ‘b’}) <class ‘frozenset’>

发布了59 篇原创文章 · 获赞 8 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Galen_xia/article/details/103645624