07 python集合

white Python 2018-04-04 39 次浏览 07 python集合已关闭评论

集合:

有不同元素组成,无序,不可变类型(数字,字符串,元组),用{}扩起来当内容。

v={1,2,3,’white’,’2′}

set()生成集合,()中的值要为一个整体,不能是多个字符串,多个数字

v = set(['white',1,2,'4'])
print(v)

.add 添加

.clear 清空

.copy 拷贝

.pop 随机删除

.remove 指定删除,若指定值不存在会报错

discard 指定删除,若指定值不存在不会报错

 

交集

.intersection  或  ‘&’

a = {'white','sarah','alex'}
b = {'white','sarah','sayid'}
print(a.intersection(b))
print(a&b)

并集

.union 或  ‘|’

a = {'white','sarah','alex'}
b = {'white','sarah','sayid'}
print(a.union(b))
print(a|b)

差集:存在于a集合,不存在于b集合

.difference 或 ‘-’

a = {'white','sarah','alex'}
b = {'white','sarah','sayid'}
print(a.difference(b))
print(a-b)
print(b-a)

交差补集

.symmetric_difference

a=a-b 集合a减集合b的差集,重新赋给集合a.

 

.isdisjiont 两个集合没有交集返回true

.issubset 若a是b的子集,返回true,若不是 返回flase

.issuperset 若a是b的负子集,返回true,若不是 返回flase

.update  相对于add可以更新多个值,a.update(b) b可以是列表,元组,字符串,数字等可迭代的对象

.frozenser() 相对于.set()为设置不可变集合,代码中将列表去重复后,重新转换为列表

l = ['white','alex','white']
s = frozenset(l)
names = list(s)
print(names)

 

回顶部