集合(set):把不同的元素组成一起形成集合,是python基本的数据类型。集合分类:可变集合(set)、不可变集合(frozenset),创建方式一样集合特点:无序,唯一,速度快 1.创建集合>>> s =
set('ian')>>> s{'a', 'n', 'i'}>>> len(s)3>>> li =
['apple','pear','peach']>>> s =
set(li)>>> s{'peach', 'pear',
'apple'}>>> len(s)3 2.访问集合由于集合本身是无序的,所以不能为集合创建索引或切片操作,只能循环遍历或使用in、not
in来访问或判断集合元素。>>> 'apple' in
sTrue>>> 'banana'
in sFalse>>> for i in
s:... print(i)...peachpearapple 3.更新集和内容add方法:是把要传入的元素做为一个整个添加到集合中>>> a{'peach', 'pear',
'apple'}>>>
a.add('banana')>>> a{'peach', 'banana',
'pear', 'apple'} update方法:是把要传入的元素拆分,做为个体传入到集合中>>> a =
set(['apple'])>>> a{'apple'}>>>
a.update('peach')>>> a{'c', 'p', 'apple',
'h', 'e', 'a'} remove方法:删除指定元素>>> a{'c', 'p', 'apple',
'h', 'e', 'a'}>>>
a.remove('apple')>>> a{'c', 'p', 'h', 'e',
'a'} pop方法:删除一个元素并返回>>> a{'h', 'e', 'a'}>>> c =
a.pop()>>> a{'e', 'a'}>>> c'h' #remove和pop什么区别?#remove只是删掉元素,需要接参数,无返回值#pop是取出元素并赋值,不需要接参数,有返回值 4.集合操作符交集>>> a{'e', 'a'}>>> b{'c', 'a', 'b'}>>> a & b{'a'}>>>
a.intersection(b){'a'} 并集(合集)>>> a | b{'e', 'a', 'c', 'b'} 差集>>>
a.difference(b)
#谁.difference, 就是循环的谁{'e'}>>>
b.difference(a){'c', 'b'}>>>
a-b #同difference{'e'}>>> b-a{'c', 'b'} 对称差#你不在我里面或是我也不在你里面的值,两个集合分别循环一次#也可以理解为两个集合差集的并集>>>
a.symmetric_difference(b) #哪个集合在前面都是一样的{'c', 'e', 'b'}>>>
b.symmetric_difference(a){'e', 'c', 'b'}>>>
(a-b)|(b-a)
#两个集合两次差集的并集{'e', 'c', 'b'}