python里面的集合类型及操作

~集合类型定义

 

集合是多个元素的无序组合,集合元素之间无序,且无法修改,不能存在相同的元素

A={"pypy123456",456,"fgh"}
B={"p",123,"p",123}
C=set("pypy12345")
print(A)
print(B)
print(C)

 输出结果:

 

 这体现了建立集合类型的方式为{}或set().

 

~集合操作符

这个和数学中的类似:就是并差交补

操作符及应用

描述

S|=T

并,更新集合S,包括在集合S和T中的所有元素

S-=T

差,更新集合S,包括在集合但是不在T中的元素

S&=T

交,更新集合S,包括同时在集合S和T中的元素

S^=T

补,更新集合S,包括集合S和T中的非相同元素

S|T

并,返回一个新集合,包含S和T中的所有元素

S-T

差,返回一个新集合,包含在S但不在T中的元素

S&T

交,返回一个新集合,包括同时在S和T中的元素

S^T

补,返回一个新集合,包括在S和T中的非相同元素

S>=T或S>T

返回True/False,判断S和T之间的包含关系

S<=T或S<T

返回True/False,判断S和T之间的包含关系

~集合处理方法

 

A={"pypy123456",456,"fgh"}
B={"p",123,"p",123}
C=set("pypy12345")
print(A)
print(B)
print(C)
A.add("mimi")
print(A)
A.discard(456)
print(A)
A.remove(456)
print(A)
C.clear()
print(B.pop())
print(len(A))
print(123 in B)

 上面这段代码,进行了几种集合处理方法的说明,也就是:.add(a)  .discard(a)  .remove(a)  .clear()  .pop()  len()  in等方法的说明。下面是执行结果

 

 上面看出来了,这个结果出错了,这就是在说明一个问题:我们移除集合中的元素的时候,必须得明白:A.discard(x)  A.remove(x)  两个方法的区别,第一个如果x不在A中,是不报错的,第二个是会报错的。

 然后我们将.remove这行代码注释掉,执行结果如下(由于本人分两次执行,部分结果可能不一致,朋友们可以自己实验一下):

 

posted @ 2021-02-13 19:13  Tomhard  阅读(347)  评论(0)    收藏  举报