集合的特点:去重,无序,因此无法通过下标取值.
1. 定义集合
2. 操作集合
s = set() #定义空的集合
s2 = {'1','2','3' # 不是key -value形式的话就是集合,不是字典
s3 ={'1','2','3','5','3'
print(s3) #打印出来后会去除重复的值 {'3', '1', '5', '2'
ls = [1,2,3,4,5,6,5]
set(ls) #将list强制转换成集合,可以进行去重
print(set(ls))
s4 = 'abcdfegabc'
set(s4) # set可以进行集合运算
print(set(s4)) #{'c', 'f', 'b', 'g', 'e', 'a', 'd'
增加 & 删除:
交集 & 并集 & 差集 & 对称差集:
s3 ={'1','2','3','5'
s3.add('1') #向集合中添加值,如果是重复的话还是会把重复的去除,因为集合无序所以输出时各个值的位置不定,可能为 {'2', '3', '1', '5'
print(s3)
s3.remove('1') #删除值
print(s3)
s3.pop()#随机删一个值
print(s3)
s2 = {'1','2','3'
s3 ={'1','2','5'
#交集
a = s2.intersection(s3) #取交集, s2.intersection(s3) 与 s3.intersection(s2) 一样
print(a) #{'2', '1'
b = s2.intersection(s3)
print(b) #{'2', '1'
print(s2 & s3) #取交集 {'2', '1'
#并集
print(s2.union(s3)) #取并集 {'2', '5', '3', '1'
print(s2|s3)#取并集 {'2', '5', '3', '1'
#差集
print(s2.difference(s3)) #取s2中存在,s3 不存在的,#取差集 {'3'
print(s2 - s3) #取差集 {'3'
print(s3 - s2) # {'5'
#对称差集,取s2, s3 中不同时存在的元素
print(s2 ^ s3) # {'3', '5'
来源: http://www.bubuko.com/infodetail-2455528.html