前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python中集合set()的使用及处理

Python中集合set()的使用及处理

作者头像
用户7886150
修改2021-01-12 14:31:30
6860
修改2021-01-12 14:31:30
举报
文章被收录于专栏:bit哲学院

参考链接: Python集合set | difference_update

在Python中集合(set)与字典(dict)比较相似,都具有无序以及元素不能重复的特点 

 1.创建set 

 创建set需要一个list或者tuple或者dict作为输入集合 

 重复的元素在set中会被自动过滤 

  1 s1  = set([1,2,3,4,3,4,5])

2 print (s1)

4 s2 = set((1,2,3,4,5,1,2,3))

5 print (s2)

7 s3 = set({1:"good",2:"nice"})

8 print (s3) 

 以上代码运行结果为: 

  1 >>>{1, 2, 3, 4, 5}

2 >>>{1, 2, 3, 4, 5}

3 >>>{1, 2} 

 我们可以看到list和tuple中的重复元素被自动过滤了,并且dict转为set时只保存了key值,并没有保存value值 

 2.添加 

  1 s4 = set([1,2,3,4,5])

2 s4.add(6)

3 s4.add(3) #可以添加重复的,但是不会有效果

4 #s4.add([7,8,9]) set的元素不能是列表,因为列表是可变的,同理字典也不能添加至set

5 print (s4) 

 运行结果为: 

  1 >>>{1, 2, 3, 4, 5, 6} 

 3.插入 

  1 s5 = set([1,2,3,4,5])

2 s5.update([6,7,8])

3 s5.update((9,10))

4 s5.update("nice")

5 print (s5) 

 使用update()函数我们可以插入整个的list、tuple、字符串,将其打碎插入,运行结果为: 

  1 {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 'c', 'n', 'e', 'i'} 

 我们可以看到插入的元素都被打碎,并且无序的插入了set中 

 4.删除 

  1 s6 = set([1,2,3,4,5])

2 s6.remove(3)

3 print (s6) 

 运行结果为: 

  1 >>>{1, 2, 4, 5} 

 5.遍历 

 set是没有索引的,但我们同样可以用for对set进行遍历 

  1 s7 = set(['n', 'i', 'c', 'e'])

2 for i in s7:

3     print (i) 

 运行结果为: 

  1 >>>1 c

2 >>>2 n

3 >>>3 e

4 >>>4 i 

 注意for返回的结果同样是无序的 

 6.set的enumerate 

  1 for index,data in enumerate(s7):

2     print (index,data) 

 返回结果为: 

  1 >>>0 c

2 >>>1 n

3 >>>2 e

4 >>>3 i 

 结果为无序的 

 7.set的交集与并集 

   1 #交集

 2 s8 = set([1,2,3,4])

 3 s9 = set([3,4,5,6])

 4 a1 = s8 & s9

 5 print (a1)

 6 print (type(a1))

 7 #并集

 8 a2 = s8 | s9

 9 print (a2)

10 print (type(a2)) 

 运行结果为: 

  1 {3, 4}

2 <class 'set'>

3 {1, 2, 3, 4, 5, 6}

4 <class 'set'> 

转载于:https://www.cnblogs.com/weiwenliang/p/10590403.html

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档