python(集合操作)

1、创建集合

a = {1,2,3,4}
print(a,type(a))

b = [1,2,3,4]
c = set(b)
print(c,type(c))

# 结果如下
{1, 2, 3, 4} <class 'set'>
{1, 2, 3, 4} <class 'set'>

2、add()添加一个元素

a = {1,2,3,4}

a.add(5)
print(a)

a.add("bb") # 添加一个元素
print(a)

# 结果如下
{1, 2, 3, 4, 5}
{1, 2, 3, 4, 5, 'bb'}

3、update()

a = {1,2,3,4}

a.update("abc") # 将 "abc" 作为一个序列添加到集合中
print(a)

# 结果如下
{1, 2, 3, 4, 'b', 'c', 'a'}
a = {1,2,3,4}

a.update("ooa") # 先去重后再将序列添加到集合中
print(a)

# 结果如下
{1, 2, 3, 4, 'a', 'o'}
a = {1,2,3,4}

a.update(["ooa",12])
print(a)

# 结果如下
{1, 2, 3, 4, 'ooa', 12}

4、remove()删除

a = {1,2,3,4}

a.remove(1)
print(a)

# 结果如下
{2, 3, 4}

5、pop()随机删除

  • 有返回值
a = {"b","c","d","e"}

b = a.pop() # 随机删除
print(b)
print(a)

# 结果如下
c
{'b', 'e', 'd'}

6、clear()清空集合

a = {"b","c","d","e"}

a.clear()
print(a)

# 结果如下
set()

7、intersection()取交集

a = {1,2,3,4,5}
b = {4,5,6,7,8}

print(a.intersection(b))
print(a & b)

# 结果如下
{4, 5}
{4, 5}

8、union()取并集

a = {1,2,3,4,5}
b = {4,5,6,7,8}

print(a.union(b))
print(a | b)

# 结果如下
{1, 2, 3, 4, 5, 6, 7, 8}
{1, 2, 3, 4, 5, 6, 7, 8}

9、difference()取差集

  • a.difference(b)    存在 a 中,但是不存在 b 中
a = {1,2,3,4,5}
b = {4,5,6,7,8}

print(a.difference(b))  # 存在 a 中,但是不存在 b 中
print(a - b)

# 结果如下
{1, 2, 3}
{1, 2, 3}

10、symmetric_difference()取对称差集

  • 取出两者除交集部分所有的内容
a = {1,2,3,4,5}
b = {4,5,6,7,8}

print(a.symmetric_difference(b))  # 交集取反
print(a ^ b)

# 结果如下
{1, 2, 3, 6, 7, 8}
{1, 2, 3, 6, 7, 8}
原文地址:https://www.cnblogs.com/ZhengYing0813/p/12823620.html