集合运算

元素与集合的关系

元素与集合的关系 ,就是判断某个元素是否是集合的一员。"a" in aset

 >>> s =set([1,2,3,4])
>>> 1 in s #返回true 是集合中的一员
True
>>> 6 in s #返回false不是集合中的一员
False
>>>

集合与集合的关系

子集和超集

并集

 >>> a =set([1,2,3,4,5])
>>> b =set([1,2,3,4,5])
>>> id(a)
64659240L
>>> id(b) #a 与b 的内存地址不同,是两个不同的对象
64656104L
>>> a == b #判断a与b是否相等,相等返回true
True
>>> b.pop() #删除b中的一个元素
1
>>> b
set([2, 3, 4, 5])
>>> b<a #判断b是否为a的子集,用数学符号小于判断 返回true ,说明b是a的子集
True
>>> b.issubset(a) #另一种判断子集的方式,使用issubset().返回true 说明b是a的子集
True
>>> a>b #用数学符号大于号判断,a是否为b的超集。返回true,说明a是b的超集
True
>>> a.issuperset(b) #可用issuperset()判断是否为超集,返回true,说明a是b的超集
True
>>> a
set([1, 2, 3, 4, 5])
>>> c =set([0,1,3,5,6])
>>> a
set([1, 2, 3, 4, 5])
>>> a |c #取a与c的并集
set([0, 1, 2, 3, 4, 5, 6])
>>> a.union(c) #取a与c的并集
set([0, 1, 2, 3, 4, 5, 6])
>>> d =a.union(c)
>>> d
set([0, 1, 2, 3, 4, 5, 6])
37 >>> d.issuperset(a) #d是a的超集
True
>>> d.issuperset(c) #d也是b的超集
True

交集 ,两个集合的公有部分

集合的差(补)

 >>> a
set([1, 2, 3, 4, 5])
>>> c
set([0, 1, 3, 5, 6])
>>> a & c #符号方法:求a与c集合的交集
set([1, 3, 5])
>>> a.intersection(c) #intersection()求交集
set([1, 3, 5])
>>> a
set([1, 2, 3, 4, 5])
>>> c
set([0, 1, 3, 5, 6])
>>> a -c #集合a相对集合c多出来的元素
set([2, 4])
>>> a.difference(c) #集合a相对集合c多出来的元素
set([2, 4])
>>> c -a #集合c相对集合a多出来的元素
set([0, 6])
>>> c.difference(a) #集合c相对集合a多出来的元素
set([0, 6])
>>> a.symmetric_difference(c) #对称差集,集合a相对集合c,以及集合c相对集合a,差集的并集,即两个集合中不同的部分
set([0, 2, 4, 6])
>>>

Python 学习笔记(十)Python集合(三)的更多相关文章

  1. Python学习笔记(十二)—Python3中pip包管理工具的安装【转】

    本文转载自:https://blog.csdn.net/sinat_14849739/article/details/79101529 版权声明:本文为博主原创文章,未经博主允许不得转载. https ...

  2. python学习笔记(十四): unittest

    Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回的结果方法和一些用例执行前的初始化操作. 在说unittest之前,先说几个概念: TestC ...

  3. python 学习笔记 9 -- Python强大的自省简析

    1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不 ...

  4. python学习笔记(一):python简介和入门

    最近重新开始学习python,之前也自学过一段时间python,对python还算有点了解,本次重新认识python,也算当写一个小小的教程.一.什么是python?python是一种面向对象.解释型 ...

  5. Python学习笔记 - day12 - Python操作NoSQL

    NoSQL(非关系型数据库) NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称.用于超大规模数据的存储.(例如 ...

  6. python学习笔记(python简史)

    一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum) 目前python主要应用领域: ·云计算 ·WEB开发 ·科学运算.人工智能 ·系统运维 ·金融:量化交 ...

  7. python 学习笔记一——Python安装和IDLE使用

    好吧,一直准备学点啥,前些日子也下好了一些python电子书,但之后又没影了.年龄大了,就是不爱学习了.那就现在开始吧. 安装python 3 Mac OS X会预装python 2,Linux的大多 ...

  8. python学习笔记(1)--python特点

    python诞生于复杂的信息系统时代,是计算机时代演进的一种选择. python的特点,通用语言,脚本语言,跨平台语言.这门语言可以用于普适的计算,不局限于某一类应用,通用性是它的最大特点.pytho ...

  9. python学习笔记之——python模块

    1.python模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...

  10. python 学习笔记十八 django深入学习三 分页,自定义标签,权限机制

    django  Pagination(分页) django 自带的分页功能非常强大,我们来看一个简单的练习示例: #导入Paginator>>> from django.core.p ...

随机推荐

  1. 软件项目技术点(1)——d3.interpolateZoom-在两个点之间平滑地缩放平移

    AxeSlide软件项目梳理   canvas绘图系列知识点整理 软件参考d3的知识点 我们在软件中主要用到d3.js的核心函数d3.interpolateZoom - 在两个点之间平滑地缩放平移.请 ...

  2. set(string str)变量传参为int的问题

    if (bo.getAnesthesiaMode() != null) { if (bo.getAnesthesiaMode() != null) { CodeMstrCoMpare codeMstr ...

  3. Creator4.2建模心得与技巧1——树的建立与跟随摄像机旋转

    Creator建模: 树一般在虚拟现实程序中都用面来实现,一种方法是通过两个面相互垂直成90度叠放在一起,另一种方法是让树面正对着视角一起旋转.这里主要说一下第二种方法. 主要思路:把树面一直正对着摄 ...

  4. Vue入门基础(火柴)

    前言 由于个人十分欣赏博友——小火柴的蓝色理想,他的博文我看了大多数,觉得十分的精彩,然而很多都是看后即忘.我想除了没有经常动手敲代码,更可能是在看的时候忽略了很多细节,因此打算把他的博文通通给“抄袭 ...

  5. Glide实现查看图片和保存图片到手机

    两种方式, 推荐方式一 方式一 downloadOnly 创建一个 ImageActivity public class ImageActivity extends AppCompatActivity ...

  6. Java基础之Map的遍历

    遍历Map集合,有四种方法:   public static void main(String[] args) { Map<String, String> map = new HashMa ...

  7. maven学习(七)后续扩展、资料

    写这几篇博客的来源是 "maven实战 + 网上的博客 + 平时使用的心得 ".记录的都是比较常用的东西,也有一些只做了大概了解.或者干脆直接略过,在这里做一下总结,如果有需要在进 ...

  8. Session、Cookie详解(2)

    session是web开发里一个重要的概念,在大多数web应用里session都是被当做现成的东西,拿来就直接用,但是一些复杂的web应用里能拿来用的session已经满足不了实际的需求,当碰到这样的 ...

  9. Linux ->> uname命令 -- 查看当前系统信息

    uname命令是用来打印当前Linux操作系统的信息,如果操作系统内核版本,操作系统是32位还是64位,计算机名字,操作系统安装时间,Linux操作系统类型 1) 操作系统是32位还是64位,感觉-m ...

  10. [翻译] iOS开发工具的介绍(第一部分)

    IOS DEVELOPMENT TIPS & TRICKS - PART I http://blog.trifork.com/2013/12/19/ios-development-tips-t ...