码迷,mamicode.com
首页 > 编程语言 > 详细

Python内置类型——set

时间:2015-08-03 01:09:25      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:

 Python中,

集合是容器,可以使用len()计算集合中元素的个数,

集合中不存在重复的元素;

集合是可迭代的,但迭代时以任意的顺序进行。

 

non-mutating方法

s.copy()

  返回集合s的浅拷贝。

 

s.difference(s1)

  返回集合s中不在集合s1中的元素的集合,即s-s1。

 

s.intersection(s1)

  返回s与s1的交集。即s&s1.

 

s.issubset(s1)

  判断s是不是s1的子集。

 

s.issuperset(s1)

   判断s是不是s1的超集。

 

s.symmetric_difference(s1)

   返回由要么在s中,要么在s1中,但不同时在s和s1中的元素组成的集合。即s^s1。

例:对称差集

1 >>> s
2 set([1, 2, 3, 5])
3 >>> s1
4 set([1, 2, 3, 4])
5 >>> s.symmetric_difference(s1)
6 set([4, 5])

 

s.union(s1)

  返回s和s1的并集。即s|s1。

 

mutating 方法

s.add(x)

  将x添加到集合s中,如果s中已经有x,则该操作没有影响。

 

s.clear()

  清空集合s。

 

s.discard(x)

  从集合s中删除x,如果x不在s中,该操作没有影响。

 

s.pop()

  返回并删除集合s中的任意一个元素。

 

s.remove(x)

  区别于s.discard(x),当x在集合S中时,二者效果相同,但当x不在集合S中时,remove(x)抛出异常:KeyError;而discard(x)没有影响。

 

s.difference_update(s1)

  即:s -= s1

s.intersection_update(s1)

  即:s &= s1

s.symmetric_difference_update(s1)

  即:s ^= s1

s.update(s1)

  即:s |= s1

  使用运算符进行集合的运算和使用函数的功能相同,当使用(增强)运算符时,两端的运算数都得是set或frozenset,

  使用函数进行集合运算时,s1只要是元素可哈希的可迭代对象就行。

Python内置类型——set

标签:

原文地址:http://www.cnblogs.com/Security-Darren/p/4641002.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!