目录
set集合概述
set集合的本质:是无序的不重复元素的集合,累死dict,保存key的值无序value
注:创建set需要一个list(列表)、tuple(元组)、dict(字典)作为输入集合
重复的元素将被过滤
set集合的创建
可以使用{}或者set()函数进行集合的创建。
注:创建一个空集合必须用set()而不是{},{}括号是用来创建一个空字典的
parame={value1,value2,......}或者set(value)
集合的去重功能
#集合的去重功能
basket={'apple','orange','apple','pear','banana'}
print(basket)
#快速判断元素是否在集合内
print('apple' in basket)
print('crabgrass' in basket)
#展示两个集合间的运算
a=set('abracadabra')
b=set('alacazam')
print(a)
print(b)
print(a-b) #集合a中包含而集合b中不包含的元素
print(a|b) #集合a/b中包含的所有元素
print(a&b) #集合a和b中都包含的元素
print(a^b) #不同时包含于a和b的元素
结果:
{'apple', 'orange', 'banana', 'pear'}
True
False
{'a', 'c', 'r', 'd', 'b'}
{'m', 'a', 'c', 'l', 'z'}
{'b', 'r', 'd'}
{'a', 'm', 'c', 'l', 'z', 'r', 'd', 'b'}
{'c', 'a'}
{'l', 'z', 'm', 'r', 'b', 'd'}
集合的基本操作
添加元素
s.add(x) #将元素x添加到集合s中,若元素已经存在,则不再进行任何操作
s.update(x) #可以添加元素、列表、元组、字典到集合s中
print('集合的基本操作')
#添加元素
s=set(('apple','orange','banana'))
print(s)
s.add("pear")
print(s)
s.update('red')
print(s)
s.update(['kk',12,'cc'])
print(s)
s.update(('a','b','c'))
print(s)
s.update({1,2,3})
print(s)
结果:
集合的基本操作
{'orange', 'apple', 'banana'}
{'pear', 'orange', 'apple', 'banana'}
{'r', 'apple', 'banana', 'pear', 'e', 'd', 'orange'}
{'r', 'apple', 'banana', 'pear', 'e', 12, 'd', 'cc', 'kk', 'orange'}
{'r', 'apple', 'c', 'banana', 'pear', 'e', 12, 'd', 'a', 'cc', 'kk', 'b', 'orange'}
{1, 2, 'r', 'apple', 'c', 'banana', 3, 'pear', 'e', 12, 'd', 'a', 'cc', 'kk', 'b', 'orange'}
移除元素
s.remove(x) #将元素从集合s中移除,若元素不存在,会发生错误
s.discard(x) #将元素从集合s中移除,若元素不存在,也不会发生错误
s.pop() #随机删除集合元素(set集合的pop方法,会对集合进行无序的排列,然后将无序排列后的集合的左边第一个元素进行删除)
#移除元素
s=set(("apple","banana","pear","orange"))
print(s)
s.remove('banana')
print(s)
s.pop()
print(s)
s.discard("banana")
print(s)
s.discard("pear")
print(s)
结果:
{'apple', 'banana', 'orange', 'pear'}
{'apple', 'orange', 'pear'}
{'orange', 'pear'}
{'orange', 'pear'}
{'orange'}
计算集合元素个数
len(s) #计算集合s的元素个数
#计算集合元素个数
s=set('abcdefg')
print(len(s))
结果:
7
清空集合
s.clear() #清空集合s
#清空集合
s=set('absdas')
s.clear()
print(s)
结果:
set()
判断元素是否在集合中存在
x in s #判断元素是否在集合s中存在,存在返回true,不存在返回false
#判断元素是否在集合中存在
s=set(('ni','hao','mo','sheng','ren'))
print('ni' in s)
print('sss' in s)
结果:
True
False
集合内置方法完整列表