python--集合

set()   函数集合

     函数创建一个无序不重复(无序唯一)元素集;

     可进行关系测试,删除重复数据,还可以计算交集、差集、并集等

创建集合。

     用  大括号   或   set() 构造函数     可以用来创建集合。

注意:想要创建空集合,  你必须使用set() 而不是 {} 

      {}用于创建空字典

set1=set()
set2={}  #这是创建的字典
set3={2,3,4,5}   # 用大括号创建 用逗号分隔 
print(type(set1))  #<class 'set'>
print(type(set2))  #<class 'dict'>
print(type(set3))  #<class 'set'>

创建集合的各种方法:  用列表,  元组,  字典

sets={1,2,3,3,7,5}
print(sets)   #打印为{1, 2, 3, 5, 7}
print(type(sets))   #打印为<class 'set'>
sets=set({1:2,3:4})  #  包含字典的   如果是字典 将取key的值 因为key是唯一的
print(sets)   #打印为1, 3}
print(type(sets))   #打印为<class 'set'>
sets =set([1,2,4,3,1])   #包含列表的
print(sets)   #打印为{1, 2, 3, 4}
print(type(sets))   #打印为 <class 'set'>
sets =set((1,2,4,3,1))  #  包含元组的
print(sets)   #打印为 {1, 2, 3, 4}
print(type(sets))   #打印为 <class 'set'>

集合函数的使用:

1.add(key)   添加  存在就不添加  不存在就添加

sets ={1,2,4,3,1}
sets.add(3)
print(sets)  #打印为{1, 2, 3, 4}
sets.add(6)
print(sets)  #打印为{1, 2, 3, 4, 6}

2.remove(key)   存在删除    不存在抛异常   并且 程序停止运行

sets ={1,2,4,3,1}
sets.remove(2)
print(sets)   #打印为{1, 3, 4}

3. pop( )  删除一个正整数中最小的 并返回

sets ={1,2,4,3,1}
pop = sets.pop()
print('删除的数据: ',pop)   #打印为删除的数据:  1

4.clear()  清空 清空后后保留格式

sets ={1,2,4,3,1}
sets.clear()
print(sets)   #打印为set()

5.update()     将字符串或集合中的数据 联合放到集合中ٜ

set={1,2,'你好','Jack'}
set.update('我好23B')
print(set)    #打印为{'好', 1, 2, '我', 'B', '3', '你好', '2', 'Jack'}
set.update({1,2,3,'我好','Boss'})
print(set)   #打印为{1, 2, 3, 'Jack', '我好', 'Boss', '你好'}

计算  :

交集 : intersection( )、

# 交集  intersection( )   也可以用"   &   "表示       提取重复的
a = {"peace", "peace", "rong", "rong", "nick"}
b = { "nick","jack", "rong","boss"}
print(a)  #打印为{'peace', 'rong', 'nick'}
print(b)  #打印为{'boss', 'rong', 'jack', 'nick'}
print(a.intersection(b))  #打印为{'rong', 'nick'}
d=a&b
print(d)  #打印为{'rong', 'nick'}

差集 : difference( )、  也可以用"  -  "表示

# 差 集   difference( )  也可以用" -  "表示    以前一个为主去掉重复 保留前一个剩下的的数据
a = {"peace", "peace", "rong", "rong", "nick"}
b = { "nick","jack", "rong","boss"}
print(a)  #打印为{'peace', 'rong', 'nick'}
print(b)  #打印为{'boss', 'rong', 'jack', 'nick'}
print(a.difference(b))  #打印为{'peace'}
print(b.difference(a))  #打印为 {'boss', 'jack'}
print(a-b)  #打印为{'peace'}
print(b-a)  #打印为 {'boss', 'jack'}

并集 : union(  )  也可以用 "  |  "  表示

a = {"peace", "peace", "rong", "rong", "nick"}
b = { "nick","jack", "rong","boss"}
print(a)  #打印为{'peace', 'rong', 'nick'}
print(b)  #打印为{'boss', 'rong', 'jack', 'nick'}
#并集  union( )   也可以用 "  |  "  表示     去掉重复的
print(a.union(b))  #打印为{'boss', 'rong', 'nick', 'peace', 'jack'}
c=a|b
print(c)  #打印为{'boss', 'rong', 'nick', 'peace', 'jack'}

对称差集 : symmetric_difference( )    也可以用"   ^   " 表示

#对称差集 symmetric_difference( )    也可以用"  ^   " 表示    提取俩个集合里面不一样的数据      ^
a = {"peace", "peace", "rong", "rong", "nick"}
b = { "nick","jack", "rong","boss"}
print(a)  #打印为{'peace', 'rong', 'nick'}
print(b)  #打印为{'boss', 'rong', 'jack', 'nick'}
print(a^b)   #打印为{'jack', 'peace', 'boss'}
print(a.symmetric_difference(b))   #打印为{'jack', 'peace', 'boss'}



 











猜你喜欢

转载自blog.csdn.net/Hao_python/article/details/80266813