集合

1、定义

集合:

1、不同元素组成

2、无序

3、集合中元素必须是不可变类型(字符串、数字、元祖)

 

二、函数

1 .add() #添加元素,只能加一个值

2 .pop() #随机删除元素

3 .remove() #删除指定元素,不存在时会报错

4 .discard() #删除指定元素,不存在时不会报错

4 .copy() #复制集合

s = {'kop',1,2,3,3,4,5,6,'qq'}
print(s)
s.add('123')
print(s)
sn = s.copy()
print(sn)
print(s.pop())
sq = s.remove(4)
print(s)
sd = s.discard(45)
print(s)
s.clear()
print(s)

输出结果:

{1, 2, 3, 4, 5, 6, 'kop', 'qq'}
{1, 2, 3, 4, 5, 6, '123', 'kop', 'qq'}
{1, 2, 3, 4, 5, 6, '123', 'kop', 'qq'}
1
{2, 3, 5, 6, '123', 'kop', 'qq'}
{2, 3, 5, 6, '123', 'kop', 'qq'}
set()

 

.frozenset() #不可变集合,无法增删

.set() #可变集合

 

三、常用关系运算

1、求交集

print(a,b) #a,b为集合

print(a.intersection(b))

print(a&b)

 

2、求并集

print(a.union(b))

pring(a|b)

 

3、求差集

print(a-b)

print(a.difference(b))

 

4、交叉补集

print(a.symmntric_difference(b))

pring(a^b)

 

5、重新给a赋值,用 .update(),前面可加其他函数组合。

a = a - b #给a重新赋值,赋值为a减去b的差集,如下:

print(a.difference_update(b))

print(a.update(b)) #可迭代的都可以

 

6、a与b中不含共同的元素

print(a.isdisjoint(b)) #输出结果是布尔值

 

7、b中包含a的所有元素,即a<=b,亦即a是b的子集

print(a.issubset(b)) #输出结果是布尔值

 

8、a中包含b的所有元素,即a>=b,亦即b是a的子集

print(a.issuperset(b)) #输出结果是布尔值

 

四、活用

去重

names=['alex','alex','wd']

names = list(set(names))

print(names)

posted @ 2018-04-23 13:41  实验体一号  阅读(71)  评论(0编辑  收藏  举报