集合是python内置的一种数据结构,它是一个无序且元素不重复的序列。这里有两个关键词一个是无序,这一点和字典是一样的,另一个关键词是元素不重复,这一点和字典的key(键)是一样的
1 .具有唯一性
2 .不支持索引
3 .与字典相同,也是无序的
创建格式如下:
parame = {value01,value02,value03,value04,....} 或者
set(value)——value的值必须是字符串才行,或者元组
注:创建一个空集合必须用set(),{ }是用来创建一个空字典的。
举例说明:
a = set('1234554321') b = set('1234567') print (a) #集合具有去重的功能,并且具有无序性 print (b) print(a-b) #集合a中包含而集合b中不包含的元素 print(a | b) #集合a或集合b包含的所有元素 print (a & b) #集合a和集合b都包含的元素 print (a ^ b) #不同时包含集合a和集合b的元素
运算结果:
语法格式如下:
a.add(x)
将元素x添加到集合a中,如果元素已存在,则不进行任何操作。a.update(x)也可以添加元素,并且参数可以是列表,元组,字典等
x可以是多个,用逗号分开。
a.remove(x)
将x从元素中移除,如果元素不存在,则会发生错误。
此外还有一个方法也是移除集合中的元素,且如果元素不存在,不会发生错误,格式如下:
a.discard(x)我们也建议设置随机删除集合中的一个元素,语法格式如下:
a.pop()
语法格式如下:
len(a)
语法格式如下:
a.clear()
语法格式如下:
x in a
举例说明:
oneset = set(('1','2','3','4')) oneset.add('5') #集合添加元素5 print (oneset) oneset.update([8,6]) #添加元素8,6 print (oneset) oneset.remove('4') # 移除元素4 print (oneset) oneset.discard('7') #移除列表不存在的元素7并且不会报错 print (oneset) oneset.pop() #随机删除集合中一个元素 print(oneset) print(len(oneset)) #计算集合元素的个数 oneset.clear() #清空集合 print (oneset)
a = set('1234554321') b = set('1234567') print ('2' in b) c = {1,2,3,4} print (3 in c) d = set('15858') print (d) e = set() print (e) #空集合——set()
输出结果:
此外同样集合支持集合推导式(Set comprehension):
x = {y for y in '12342134213' if y not in '123'} print (x)
输出结果:
集合内置方法完整如下:
add()——为集合添加元素
clear()——移除集合中的所有元素
copy()——拷贝一个集合
difference()——返回多个集合的差集
difference_update()——移除集合中的元素,该元素在指定的集合也存在
discard()——删除集合中指定的元素
intersection()——返回集合的交集
intersection_update()——返回集合的交
isdisjoint()——判断两个集合是否包含相同的元素,若没有返回true,否则返回false
issubset()——判断指定集合是否为该方法参数集合的子集
issuperset()——判断该方法的集合参数是否为指定集合的子集
pop()——随机移除元素
remove()——移除指定元素
symmetric_difference()——返回两个集合中不重复的元素集合
symmetric_difference_update()——移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中
union()——返回两个集合的病机
update()——给集合添加元素