温馨提示:这篇文章已超过595天没有更新,请注意相关的内容是否还可用!
前言
集合是可变的、无序的数据类型,其元素是唯一的,不可重复的;Python中的集合用逗号将元素隔开,整体用花括号包裹;也就是相当于去掉值,只剩下键的字典。
创建集合
test = {'小明','小红','许刚不许刚','校长','小张'} print(type(test)) list2=[2,3,22,22,22,22,88,99] set2 = set(list2)#列表转换成集合 print(set2)#元素的唯一性,利用这一特性,我们可以轻松的做数据的“去重”操作。
集合添加元素
list2=[2,3,22,22,22,22,88,99] set2 = set(list2)#列表转换成集合 set2.add('2029')#字符串 set2.add(2029)#数字类型 print(set2) #添加元组 set2.add(('route','switch'))#添加元组没问题 print(set2) #添加列表 set2.add([2003,2389])#报错 #set2.add([2003,2389]) #TypeError: unhashable type: 'list' #为什么报错呢?集合中元素必须唯一。不能添加可变容器序列。列表、字典和集合都有可能破坏了元素的唯一性。
集合元素删除
#方法discard(),可以删除集合中的元素,如果集合中没有这个元素的话,不会报错。 test = {'小明','小红','许刚不许刚','校长','小张'} test.discard('小明') test.discard('小天') print(test) #清空集合所有的元素 test = {'小明','小红','许刚不许刚','校长','小张'} test.clear() print(test)#为什么不是{},因为{}表示空字典。为了区别,所以空集合呈现为set()。
集合并集 union() |
#两个集合合并,不同的合并,相同的去重,有一个术语叫“并集”。 test = {100,200,300,500,200} test2 = {200,500,600,200} a=test.union(test2) print(a) #用这个管道符进行处理,效果一致。 test = {100,200,300,500,200} test2 = {200,500,600,200} a=test | test2 print(a)
集合交集 intersection() &
test = {100,200,300,500,200} test2 = {200,500,600,200} b=test.intersection(test2) print(b) #也可以用& a=test & test2 print(a)
集合生成式
a={i*i for i in range(1,10)} print(a) print(type(a))
文章版权声明:除非注明,否则均为柳三千运维录原创文章,转载或复制请以超链接形式并注明出处。