Python集合及运算

共 2270字,需浏览 5分钟

 ·

2021-04-17 20:53

     集合(set)是一个无序的不重复元素序列。

可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

创建格式:

parame = {value01,value02,...}或者set(value)


集合的写法:

set1={1,2,3}set2=set([1,2,3])set3=set((1,2,3))set4=set({1:2})print(type(set1),type(set2),type(set3),type(set4))print(set1,set2,set3,set4)
<class 'set'> <class 'set'> <class 'set'> <class 'set'>{123} {123} {123} {1}

集合的运算:

1、列表去重,变成集合即可去重list1=[1,2,2,'python','java','java']list2=set(list1)print(list2,type(list2))

{1, 2, 'python', 'java'} <class 'set'>2、集合的交集list1=[1,2,2,'python','java','java']list1=set(list1)
list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.intersection(list2))或print(list1&list2)

{2, 'python', 'java'}3、集合的并集(list1和list2合到一起再去重)list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.union(list2))或print(list1|list2)

{1, 2, 3, 'c', 'java', 'python'}4、集合的差集(list1有list2没有的)list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.difference(list2))或print(list1-list2)

{1}5、集合的对称差集(list1有list2没的,list2有的list1没有的,去掉list1和list2重复的)
list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.symmetric_difference(list2))或print(list1^list2)

{1, 3, 'c'}6、集合的子集(list1是list2子集?)
list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.issubset(list2))

False7、集合添加1项元素
list1=[1,2,2,'python','java','java']list1=set(list1)list1.add(555)print(list1)

{1, 2, 555, 'java', 'python'}8、集合添加多项元素list1=[1,2,2,'python','java','java']list1=set(list1)list1.update([555,666,777])print(list1)

{'java', 1, 2, 777, 555, 666, 'python'}9、删除集合元素
list1=[1,2,2,'python','java','java']list1=set(list1)list1.remove(2)print(list1)

{1, 'python', 'java'}10、判断元素是否在集合
list1=[1,2,2,'python','java','java']list1=set(list1)print(1 in list1)

True11、随机删集合1个元素并返回这个元素
list1=[1,2,2,'python','java','java']list1=set(list1)print(list1.pop())

1



浏览 35
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报