(一)初识set
dict的作用是建立一组 key 和一组 value 的映射关系,dict的key是不能重复的。有的时候,我们只想要 dict 的 key,不关心 key 对应的 value,目的就是保证这个集合的元素不会重复,这时,set就派上用场了。(即set值不会重复)set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素:s = set(['a' , 'b' , 'c']).
因为set的值不会重复所以当我们传入重复的值的时候就会把重复值删掉例: s = set(['a' , 'b' , 'c' , 'c'])打印出来之后是 ['a','b','c']。而且len(s) = 3而不是4.
(二)set取值
由于set是无序的所以不能通过索引的方式获取set值。访问set值就是判断set中是否存在该值.注:set区分大小写
例: s = set(['a' , 'b' , 'c'])
('b' in s) 为True
(三)set的特点
set的内部结构和dict很像,唯一区别是不存储value,因此,判断一个元素是否在set中速度很快。set存储的元素和dict的key类似,必须是不变对象,因此,任何可变对象是不能放入set中的。最后,set存储的元素也是没有顺序的。
(四)遍历set
set也是集合,所以可以用for遍历
s = set(['a' , 'b' , 'c'])
for key in set:
print(key)
(五)set赋值
由于set存储的是一组不重复的无序元素,因此,更新set主要做两件事:一是把新的元素添加到set中,二是把已有元素从set中删除。
添加元素时,用set的add()方法:
s = set([1 ,2 ,3 ,4])
s.add(5)
print(s) ======> [1,2,3,4,5]
如果set中已存在值(例5),则值不会被添加到set中
删除值:用remove()方法
例;
s = set([1,2,3])
s.remove(e)
print (s) ======> [1,2]
如果remove的值不存在于set中时会报错