一.set集合
1.概念
python中的集合跟数学上的集合是一致的
特点:不允许有重复元素,可以进行交集,并集或者差集的计算
set和dict类似,和dict的区别在于:set相当于只是存储了key的集合
本质:无序且无重复元素的集合
2.创建
代码演示:#注意:set的创建没有特殊的符号,主要是通过list,tuple,dict进行创建
#格式:集合名=set(list或者tuple或者dict) 类似于list() tuple()
#list
s1=set([1,43,4,546,5,43,1,4])
print(s1)
#注意:重复元素会在set中被自动过滤掉
#tuple
s2=set((34,54,54,5,56))
print(s2)
#dict
#注意:使用dict创建set的时候,只是将key作为set的元素进行创建
s3=set({"zhangsan":20,"lisi":409,"jack":5748})
print(s3)
3.操作
3.1添加
代码演示:#添加
#1.1 add():在set的末尾添加元素
s1=set([1,2,3,4,5])
print(s1)
s1.add(6)
print(s1)
#注意:如果需要添加的元素已经存在的话,则添加失败
s1.add(3)
print(s1)
#print(s1.add(3))
#print(s1.add(7))
#在集合中添加list————》不能
#s1.add([7,8,9])————》TypeError: unhashable type: 'list'
#在集合中添加tuple————》能
s1.add((7,8,9))
print(s1)
#在集合中添加dict————》不能
#s1.add({10:1,20:2}) #TypeError: unhashable type: 'dict'
#print(s1)
#1.2 update() 插入:【打碎添加,类似于extend的应用】
s2=set([1,2,3,4,5])
print(s2)
#update不能添加单个元素
#s2.update(6) TypeError: 'int' object is not iterable
s2.update((8,9))
print(s2)
s2.update({10:1,20:2})
print(s2)
s2.update("good")
print(s2)
#注意区分add()和update()
3.2删除
代码演示:
#2.删除
s3=set([54,64,6,6])
s3.remove(64)
print(s3)
3.3遍历
代码演示:#遍历
#注意:set中是没有索引的
s3=set([54,64,6])
for element in s3:
print(element)
for i,element in