欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

集合set

程序员文章站 2022-07-13 08:42:24
...

把不同的元素集合在一起,重点是不同,set具有去重性

集合的创建:只能通过关键字set来创建set(),set函数内的参数必须是iterable -- 可迭代对象对象,像这样会报错的

集合set

集合的分类:可变集合、不可变集合

可变集合set,可以添加可删除元素,set这个整体是非可hash的,不能做字典的键,也不能做其他元素的集合

不可变集合frozenset:不能添加删除元素

集合的访问:集合本身是无序的,所以集合没有切片和索引,只能通过循环遍历,或者用in或not in判断元素是否在集合中

s = set('hello')
print(s)
print('h' in s)
#{'e', 'o', 'h', 'l'}
#True

 s.add('world')#添加了一个元素

s.update('ops')#update会把传入的元素当做一个序列,其中的每个元素都会成为set中的单独元素、

>>> s = set(['hello',12,250])
>>> s
{'hello', 250, 12}
>>> s.update('world')
>>> s
{'r', 250, 12, 'w', 'd', 'l', 'o', 'hello'}
>>> s.update(['world',100])
>>> s
{'r', 100, 'world', 250, 12, 'w', 'd', 'l', 'o', 'hello'}
s = set('hello')
print(s)
print('h' in s)

集合的remove方法,s.remove(),s.pop(),清空:s.clear()

还有集合之间的相互关系  交集、并集、差集

a = set([1,2,3,4,5])
b = set([4,5,6,7,8])
#intersection() 交集  &
print(a.intersection(b)) #输出{4,5}

#union() 并集   a \ b
print(a.union(b)) #输出{1, 2, 3, 4, 5, 6, 7, 8}

#diffeernce() 差集 a - b
print(a.difference(b))#in a not in bs

#可以用字符来表示各种集合关系,反向并集^

上一篇: ES6 数组

下一篇: es6(一)