集合跟列表有点像,也是能够存一堆数据的,不过它有几个独特的特色:python
一、集合里的元素不可变,即不能再集合里存储列表(list)、字典(dict)。字符串、数字、元组等不可变类型能够存储再集合中。code
二、天生去重,即在集合里不会出现重复元素,就算你故意写入重复元素,集合也会自动去掉重复的,只保留一个。blog
三、无序,集合中的元素没有前后之分。rem
一、建立集合字符串
a = {2, 321, 'Kwan', 1, '小明', 'Kwan', 321}
二、帮助列表去重class
将列表转换成集合,再转回列表,便可实现列表的去重数据类型
a = ['Kwan', 'Kwan', 21, 21, '小明'] a = list(set(a)) # 先转换成集合,再转换成列表
a = {'Kwan', 21, 'male', 'LL', 43} # 增 a.add('Kobe') # 删 a.discard('male') # 用discard()方法,删除指定的元素,若指定元素不存在,则do nothing a.pop() # 用pop()方法,随即删除一个元素并返回这个元素 a.remove('LL') # 用remove()方法,同discard # 查 if 'Kwan' in a: # 用in方法 pass # 改(没有改这个操做,集合不能改)
a1 = {'Kwan', '小明', 'LL', 'PP', 'Kobe'} a2 = {'小明', 'LL', 'Alice', 'Jack', 'Neal'} print(a1 & a2) # &交集运算 print(a1 | a2) # |并集运算 print(a1 - a2) # -差集运算 print(a2 - a1) print(a1 ^ a2) # ^对称差集运算 print(a1.isdisjoint(a2)) # 判断两个集合是否是相交的,返回True或者False print(a1.issubset(a2)) # 判断a1是否是a2的子集,返回True或者False print(a1.issuperset(a2)) # 判断a1是否是a2的父集,返回True或者False