首页 > 编程语言 > 详细

python集合操作

时间:2019-04-25 12:54:47      阅读:163      评论:0      收藏:0      [点我收藏+]

技术分享图片

一:python官方文档

  https://docs.python.org/3.6/library/stdtypes.html#set-types-set-frozenset

二:集合概念

  • 集合是无序的
  • 集合是无重复元素的

技术分享图片

一:add()

会改变原有集合

技术分享图片
1 >>> s = set(HackerRank)
2 >>> s.add(H)
3 >>> print s
4 set([a, c, e, H, k, n, r, R])
5 >>> print s.add(HackerRank)#添加后返回none
6 None
7 >>> print s
8 set([a, c, e, HackerRank, H, k, n, r, R])
set.add()

二:pop(),discard(),remove()

  •  pop()是随机删除元素
  •  discard(),remove()是删除指定元素的
  •     discard()在删除不存在元素是不会报错,而remvoe()会报keyerror错误
  •     都会改变原有集合

set.pop()

技术分享图片
1 >>> s = set([1])
2 >>> print s.pop()
3 1
4 >>> print s
5 set([])
6 >>> print s.pop()
7 KeyError: pop from an empty set
set.pop()

set.remove()

技术分享图片
 1 >>> s = set([1, 2, 3, 4, 5, 6, 7, 8, 9])
 2 >>> s.remove(5)
 3 >>> print s
 4 set([1, 2, 3, 4, 6, 7, 8, 9])
 5 >>> print s.remove(4)#默认返回None
 6 None
 7 >>> print s
 8 set([1, 2, 3, 6, 7, 8, 9])
 9 >>> s.remove(0)
10 KeyError: 0
set.remove()

set.discard()

技术分享图片
 1 >>> s = set([1, 2, 3, 4, 5, 6, 7, 8, 9])
 2 >>> s.discard(5)
 3 >>> print s
 4 set([1, 2, 3, 4, 6, 7, 8, 9])
 5 >>> print s.discard(4)
 6 None
 7 >>> print s
 8 set([1, 2, 3, 6, 7, 8, 9])
 9 >>> s.discard(0)
10 >>> print s
11 set([1, 2, 3, 6, 7, 8, 9])
set.discard()

三:intersetcion(),difference(),unoin(),交集,差集,并集,

不改变原有集合

set.intersection()

技术分享图片
 1 >>> s = set("Hacker")
 2 >>> print s.intersection("Rank")
 3 set([a, k])
 4 
 5 
 6 >>> print s.intersection([R, a, n, k])
 7 set([a, k])
 8 
 9 >>> print s.intersection(enumerate([R, a, n, k]))
10 set([])
11 
12 >>> print s.intersection({"Rank":1})
13 set([])
14 
15 >>> s & set("Rank")
16 set([a, k])
set.intersection()

set.difference()

技术分享图片
 1 #set1有的而set2没有的元素
 2 >>> s = set("Hacker")
 3 >>> print s.difference("Rank")
 4 set([c, r, e, H])
 5 
 6 >>> print s.difference(set([R, a, n, k]))
 7 set([c, r, e, H])
 8 
 9 >>> print s.difference([R, a, n, k])
10 set([c, r, e, H])
11 
12 >>> print s.difference(enumerate([R, a, n, k]))
13 set([a, c, r, e, H, k])
14 
15 >>> print s.difference({"Rank":1})
16 set([a, c, e, H, k, r])
17 
18 >>> s - set("Rank")
19 set([H, c, r, e])
set.difference()

set.unoin()

技术分享图片
 1 >>> s = set("Hacker")
 2 >>> print s.union("Rank")
 3 set([a, R, c, r, e, H, k, n])
 4 
 5 >>> print s.union(set([R, a, n, k]))
 6 set([a, R, c, r, e, H, k, n])
 7 
 8 >>> print s.union([R, a, n, k])
 9 set([a, R, c, r, e, H, k, n])
10 
11 >>> print s.union(enumerate([R, a, n, k]))
12 set([a, c, r, e, (1, a), (2, n), H, k, (3, k), (0, R)])
13 
14 >>> print s.union({"Rank":1})
15 set([a, c, r, e, H, k, Rank])
16 
17 >>> s | set("Rank")
18 set([a, R, c, r, e, H, k, n])
set.union()

 

python集合操作

原文:https://www.cnblogs.com/Mr-l/p/10767637.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!