s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])返回的是{11,22,33,44,‘Tom’,‘tony’,77,2.5}(注意:返回的并不是一个字典,只是告诉你这个集合中含有这些元素,所以每次返回的结果元素的顺序可能是不一样的)

  s2=set([11,22,33,44,'Tom','tony',11,55,66,])返回的是{11,22,33,44,‘Tom’,‘tony’,55,66}(注意:返回的并不是一个字典,只是告诉你这个集合中含有这些元素,所以每次返回的结果元素的顺序可能是不一样的)

add(...)
  Add an element to a set.
  This has no effect if the element is already present.(如果元素已存在,则添加无效。就是说明set是一个没有重复元素的集合。)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

       s1.add('jimi')

     print(s1)

  结果:{33, 'tony', 2.5, 'jimi', 11, 44, 77, 22, 'Tom'}(注意:set是一个无序的集合,可能每次运行的结果的顺序不一样。

difference(...)
  Return the difference of two or more sets as a new set.(求主差集,并会生成一个新的集合
  (i.e. all elements that are in this set but not the others.)(注意:s1.difference(s2)表示的是找出s1中有而s2中没有的元素,并生成一个新的集合。s2.difference(s1)表示的是找出s2中有而s1中没有的元素,并生成一个新的集合。

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s3=s1.difference(s2)

     s4=s2.difference(s1)

     print(s3)

     print(s4)

  结果:{2.5, 77}

     {66, 55}

difference_update(...)
  Remove all elements of another set from this set.(从这个集合中移除另一组的所有元素。注意:s1.difference_update(s2)表示的是移除s1中两者共有的元素,保留不共有的元素,是对s1的修改而不是生成一个新列表。    s2.difference_update(s1)表示的是移除s2中两者共有的元素,保留不共有的元素,是对s2的修改而不是生成一个新列表。

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s1.difference_update(s2)

     print(s1)

  结果:{2.5, 77}

discard(...)
  Remove an element from a set if it is a member.(移除集合中的成员(元素))
  If the element is not a member, do nothing.(如果集合中没有这个成员,则不进行任何操作,也不会报错,这与Remove有区别。

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s1.discard(2.5)

  结果:{33, 'Tom', 11, 44, 77, 'tony', 22}

intersection(...)
  Return the intersection of two sets as a new set.(生成两个集合的交集并生成一个新的列表
  (i.e. all elements that are in both sets.)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s5=s1.intersection(s2)

     s6=s2.intersection(s1)

     print(s5)

     print(s6)

  结果:{33, 'Tom', 11, 44, 22, 'tony'}

     {33, 11, 44, 'tony', 'Tom', 22}

intersection_update(...)
  Update a set with the intersection of itself and another.(功能和intersection(...)是一样的,但是s1.intersection(s2)在执行的时候是对原来的集合s1的修改,并不会生成一个新的集合)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s1.intersection(s2)

     s2.intersection(s1)

     print(s1)

     print(s2)

  结果:{33, 'Tom', 11, 44, 22, 'tony'}

     {33, 11, 44, 'tony', 'Tom', 22}

isdisjoint(...)
  Return True if two sets have a null intersection.(判断两个集合是否有交集,如果有则返回False,如果没有则返回True)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([100,50,500,])

     print(s1.isdisjoint(s2))

  结果:True

issubset(...)
  Report whether another set contains this set.(判断一个集合中的所有元素是否在另个集合中,s1.issubset(s2)表示的是s1中的每个元素都在s2中,注意与s1.issuperset(s2)的区别。  

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,])

     s3=([11,22,33,44,'Tom','tony',11,55,66])

     s1.issubset(s2)

     s1.issubset(s3)

     print(s1.issubset(s2))

     print(s1.issubset(s3))

  结果:True

     False

issuperset(...)
  Report whether this set contains another set.(判断一个集合中的所有元素是否在另个集合中,s1.issubset(s2)表示的是s2中的每个元素都在s1中,注意与s1.issubset(s2)的区别。  

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,])

     s3=([11,22,33,44,'Tom','tony',11,55,66])

     s1.issuperset(s2)

     s1.issuperset(s3)

     print(s1.issuperset(s2))

     print(s1.issuperset(s3))

  结果:True

     False

pop(...)
  Remove and return an arbitrary set element.(随机删除一个元素)
  Raises KeyError if the set is empty.(如果集合为空,执行pop时会提醒KeyError)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s1.pop()

  结果:{33, 'Tom', 2.5, 11, 44, 77, 22}

remove(...)
  Remove an element from a set; it must be a member.(移除集合中的成员(元素),这个元素必须在这个集合中)
  If the element is not a member, raise a KeyError.(如果集合中没有这个成员,则会提示keyError,这与discard有区别。

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s1.remove(2.5)

     s1.remove('jimi')

  结果:{33, 'Tom', 'tony', 11, 44, 77, 22}

     KeyError: 'jimi'

symmetric_difference(...)
  Return the symmetric difference of two sets as a new set.(生成一个新的列表,这个列表是两个列表中不重复元素的集合,s1.symmetric_difference(s2)表示s1中有s2中没有的元素和s2中有s1中没有的元素的集合

  (i.e. all elements that are in exactly one of the sets.)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s4=s2.symmetric_difference(s1)

     print(s4)

  结果:{2.5, 66, 77, 55}

symmetric_difference_update(...)
  Update a set with the symmetric difference of itself and another.(对一个列表进行修改,两个列表中不重复元素的集合,s1.symmetric_difference(s2)表示s1中有s2中没有的元素和s2中有s1中没有的元素的集合

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s1.symmetric_difference_update(s2)

     print(s1)

  结果:{2.5, 66, 77, 55}

union(...)
  Return the union of sets as a new set.(生成一个新集合,改列表是两个列表的所以成员(元素)的集合,s1.union(s2)表示的是包含s1,s2所有元素的新集合
  (i.e. all elements that are in either set.)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s3=s1.union(s2)

     print(s3)

  结果:{33, 2.5, 66, 'Tom', 11, 44, 77, 55, 22, 'tony'}

update(...)
  Update a set with the union of itself and others.(将一个集合更新到另一个集合,s1.update(s2)表示将s2中的所有元素放到s1中,完成对s1的更新修改)

  例如:s1=set([100,50,])

      s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s1.update(s2)

     print(s1)

  结果:{'tony', 33, 66, 100, 'Tom', 11, 44, 50, 22, 55}

python-set集合类方法的更多相关文章

  1. python 静态方法、类方法(二)

    <Python静态方法.类方法>一文中曾用在类之外生成函数的方式,来计算类的实例的个数.本文将探讨用静态方法和类方法来实现此功能. 一使用静态方法统计实例 例1.static.py # - ...

  2. Python 3 集合基础和概念!

    Python 3 集合基础和概念! Python 3中,集合是无序的,所以不能进行切片和索引操作. 创建集合有两个方法:set()方法创建的集合是可变的,可被迭代的:frozenset()方法创建的集 ...

  3. Python的集合

    1. Python的集合 1.1 集合的定义 在Python中, 集合set是基本数据类型的一种集合类型,它有可变集合(set())和不可变集合(frozenset)两种.Python中的集合set类 ...

  4. python类:类方法和静态方法

    http://blog.csdn.net/pipisorry/article/details/49516185 面相对象程序设计中,类方法和静态方法是经常用到的两个术语.逻辑上讲:类方法是只能由类名调 ...

  5. Python 操作集合

    Python 操作集合 集合,set,主要用于数据的关系测试和去重处理,和列表类似,可以存储数据,列表中可以存储重复的数据,但是如果转化为集合之后,数据就会进行去重,然后保留唯一值:关系测试就是求多个 ...

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

    在Python中集合(set)与字典(dict)比较相似,都具有无序以及元素不能重复的特点 1.创建set 创建set需要一个list或者tuple或者dict作为输入集合 重复的元素在set中会被自 ...

  7. python实例、类方法、静态方法

    [python实例.类方法.静态方法] 参考:http://blog.163.com/yang_jianli/blog/static/161990006201122411586729/

  8. Python:集合操作总结

    集合是一组无序排列的不重复元素集 [注]:集合的最大作用是对一个序列进行去重操作 一.集合的分类 在Python中集合分为两类,为可变集合(set)和不可变集合(frozenset).对于可变集合(s ...

  9. python 的集合 set()操作

      Python 的集合 set(),是一个无序不重复元素集,可以用于关系测试和消除重复元素.     有以下运算:   1.创建一个set ()集合:   2.add:增加集合元素   3.clea ...

  10. 【面试必问】python实例方法、类方法@classmethod、静态方法@staticmethod和属性方法@property区别

    [面试必问]python实例方法.类方法@classmethod.静态方法@staticmethod和属性方法@property区别 1.#类方法@classmethod,只能访问类变量,不能访问实例 ...

随机推荐

  1. Solr4:数据导入(dataimport)时,不符合Solr日期类型要求的字段的处理

    背景: 要求将一个SQL Server2012版本中的数据库导入到Solr中.数据表中有一字段用来存储birthday日期字段,为nvarchar类型,长度为8,格式为:yyyyMMdd. 导入Sol ...

  2. c#如何读取相机手机的拍摄时间

    /// 获中的照片拍摄日期 /// </summary> /// <param name="fileName">文件名</param> /// ...

  3. ACE代码编辑器,代码提示,添加自定义数据

    //设置自动提示代码 var setCompleteData = function(data) { var langTools = ace.require("ace/ext/language ...

  4. LevelDB(v1.3) 源码阅读之 Slice

    LevelDB(v1.3) 源码阅读系列使用 LevelDB v1.3 版本的代码,可以通过如下方式下载并切换到 v1.3 版本的代码: $ git clone https://github.com/ ...

  5. Codeforces Round #236 (Div. 2) C. Searching for Graph(水构造)

    题目大意 我们说一个无向图是 p-interesting 当且仅当这个无向图满足如下条件: 1. 该图恰有 2 * n + p 条边 2. 该图没有自环和重边 3. 该图的任意一个包含 k 个节点的子 ...

  6. openlayers 注册事件例子

    registerEvents:function() { this.events = new OpenLayers.Events(this, this.div, null, true); functio ...

  7. 对依赖倒置原则(DIP)及Ioc、DI、Ioc容器的一些理解

    1.概述 所谓依赖倒置原则(Dependence Inversion Principle)就是要依赖于抽象,不要依赖于具体.简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模 ...

  8. c# socket 解决粘包,半包

    处理原理: 半包:即一条消息底层分几次发送,先有个头包读取整条消息的长度,当不满足长度时,将消息临时缓存起来,直到满足长度再解码 粘包:两条完整/不完整消息粘在一起,一般是解码完上一条消息,然后再判断 ...

  9. sql: 查找约束

    主键约束 SELECT   tab.name AS [表名],   idx.name AS [主键名称],   col.name AS [主键列名] FROM   sys.indexes idx    ...

  10. MyBatis知多少(21)更新操作

    上一章展示了如何使用MyBatis对表进行读取操作.本章将告诉你如何在一个表中使用MyBatis更新记录. 我们已经在MySQL下有EMPLOYEE表: CREATE TABLE EMPLOYEE ( ...