基本数据类型之集合

set

set集合,是一个无序且不重复的元素集合

 # set  不允许重复的集合 set允许重复的列表但是集合是无序的
#例如
# s = {1,23,23,4,55,55}
# print(s) # 结果 {1, 4, 23, 55} # 1、创建
# s = set()
# s = {11,22,33,44} # 2、转换
# l = list()
# s = set() #创建集合
# s = set([11,22,33,11,22]) # 把列表转化成集合 #3、 集合的内置方法 # 1 add z在集合内添加元素,不要添加集合中有的 只能添加一个元素
# se = {1,2,3,3}
# se.add(44)
# print(se) # 2 clear 清理集合
# s1 = {11,22,33,44,55}
# s1.clear()
# print(s1) # 3 difference - 号代表取差集
# s1 = {11,22,33,44,55}
# s2 = {22,55,66}
# ret1 = s1.difference(s2)#找s1中存在,s2中不存在的集合 #s1-s2
# ret2 = s2.difference(s1)#找s2中存在,s1中不存在的集合 #s2-s1
# print(ret1)
# print(ret2) # 4 difference_update
# s1 = {11,22,33,44,55}
# s2 = {22,55,66}
# ret = s1.difference_update(s2)
# # 找s1中存在,s2中不存在的集合,更新自己
# print(s1)
# print(ret) # 5 discard 移除指定元素 没有不报错
# s1 = {11,22,33,44,55}
# s1.discard(44)
# s1.remove(11) #移除指定元素,没有报错
# print(s1) # 6 intersection 求交集 &
# se = {11,22,33}
# be = {22,95,"suibian"}
# # ret = se.intersection(be)
# # se.intersection_update()
# # print(ret)
# # print(se)
# ret = se.isdisjoint(be) #判断来个是否由交集 有的话False 没有True
# print(ret) # 7 issubset 子序列
# se = {11,22,33,44}
# be = {11,22}
# ret = se.issubset(be)
#
# ret1 = se.issuperset(be) #父序列
# print(ret)
# print(ret1) # 8 #随机删除一个值 并返回值
# se = {11,22,33,44}
# ret = se.pop()
# print(ret) # 9 symmetric_difference ^ # 交差补集 #去除两个集合相同部分,剩下不同的元素
# se = {11,22,33,44}
# be = {11,22,55,77}
# ret = se.symmetric_difference(be)
# print(ret)
#
# # 10 union | # 交集 # 求两个集合的公共部分
# ret = se.union(be)
# print(ret) # 10 update 更新列表
# se = {11,22,33,44}
# se.update([44,55])
# print(se)

Python之路【第四篇】python基础 之基本数据类型之集合的更多相关文章

  1. python之路第四篇(基础篇)

    一.冒泡算法实现: 方法一: li = [13,33,12,80,66,1] print li for m in range(4): num1 = li[m] num2 = li[m+1] if nu ...

  2. 【Python之路】第九篇--Python基础之线程、进程和协程

    进程与线程之间的关系 线程是属于进程的,线程运行在进程空间内,同一进程所产生的线程共享同一内存空间,当进程退出时该进程所产生的线程都会被强制退出并清除.线程可与属于同一进程的其它线程共享进程所拥有的全 ...

  3. Python之路第四天,基础(4)-装饰器,迭代器,生成器

    装饰器 装饰器(decorator)是一种高级Python语法.装饰器可以对一个函数.方法或者类进行加工.在Python中,我们有多种方法对函数和类进行加工,比如在Python闭包中,我们见到函数对象 ...

  4. 【Python之路】第一篇--Linux基础命令

    pwd 命令 查看”当前工作目录“的完整路径 pwd -P # 显示出实际路径,而非使用连接(link)路径:pwd显示的是连接路径 .   表示当前目录 ..  表示上级目录 /  表示根目录 ls ...

  5. Python之路(第四篇):Python基本数据类型列表、元组、字典

    一.列表 1.列表 list ,是一个类,li = [1,2,"nicholas"] li是通过list类创建的对象. 2.list特点: 用中括号括起来,用逗号分割每个元素,列表 ...

  6. Python之路(第八篇)Python内置函数、zip()、max()、min()

    一.python内置函数 abs() 求绝对值 例子 print(abs(-2)) all() 把序列中每一个元素做布尔运算,如果全部都是true,就返回true, 但是如果是空字符串.空列表也返回t ...

  7. Python之路(第五篇) Python基本数据类型集合、格式化、函数

    一.变量总结 1.1 变量定义 记录某种状态或者数值,并用某个名称代表这个数值或状态. 1.2 变量在内存中的表现形式 Python 中一切皆为对象,数字是对象,列表是对象,函数也是对象,任何东西都是 ...

  8. 【Python之路】特别篇--Python正则表达式

    正则表达式的基础 正则表达式并不是Python的一部分. 正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大. 得益于这一点 ...

  9. 【Python之路】特别篇--Python面向对象(进阶篇)

    上一篇<Python 面向对象(初级篇)>文章介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使 ...

  10. Python之路(第七篇)Python作用域、匿名函数、函数式编程、map函数、filter函数、reduce函数

    一.作用域 return 可以返回任意值例子 def test1(): print("test1") def test(): print("test") ret ...

随机推荐

  1. Uiautomator-----新建工程

    一.前提: 安装好安卓开发环境:jdk.安卓SDK.ADT.ant.eclipse   配置环境   二.新建uiautomator工程 1.打开eclipse,新建一个工程(这个网上资料很多,大家自 ...

  2. VC++ : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall std::basic_string<wchar_t,struct std::char_traits<wchar_t>

    最近学习Google Breakpad,将其用在了自己的项目中,编译的版本为VS2010,没有什么问题.但是为了和之前的程序兼容,需要使用VS2008版本的程序,于是又编译了VS2008版本的代码,但 ...

  3. ajax用get刷新页面元素在IE下无效解决~~

    总结一下解决办法: 在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,[即get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端 ...

  4. access基本操作(c#操作,远程连接,执行sql,加密,备份)

    前言 最近项目用到了access,是的就是access,工作在桌面型的小数据库应用还是会用到的,如果你确定永远不会遇到access的操作,请忽略此篇文章 1.vs配置access 既然是数据库,就少不 ...

  5. Android基础学习第二篇—Activity

    写在前面的话: 1. 最近在自学Android,也是边看书边写一些Demo,由于知识点越来越多,脑子越来越记不清楚,所以打算写成读书笔记,供以后查看,也算是把自己学到所理解的东西写出来,献丑,如有不对 ...

  6. PHP 判断点是否在多边形内

    如何判断一个点是否在一个多边形内,何时会用到这个场景. 我们就模拟一个真是场景.我们公司是快递公司,在本地区域有6个分点.每个分点有3-5个工人负责附近的快递派遣发送,所以根据每个点的服务区域我们就能 ...

  7. Duilib源码分析(五)UI布局—Layout与各子控件

    接下来,继续分析duilib之UI布局Layout,目前提供的布局有:VerticalLayout.HorizontalLayout.TileLayout.TabLayout.ChildLayout分 ...

  8. [转]js实现各种进制的转换

    关键点: parseInt(string, radix).toString(target_radix); 参考:http://www.cnblogs.com/guowei1027/archive/20 ...

  9. ring3硬件断点

    4个断点寄存器DR0~DR3用来设置断点的线性地址. DR6为状态寄存器,DR7为控制寄存器. DR4和DR5保留.当CR4.DE==1时,访问DR4和DR5产生#UD异常:IF CR4.DE==0, ...

  10. 安装openssl 扩展的时候出现Cannot find config.m4. Make sure that you run '/usr/local/php/bin/phpize' in the top level source directory of the module的解决方法

    进入php源码包目录:cd /usr/local/php-5.6.25/ext/openssl 执行命令:  cp ./config0.m4 ./config.m4 即可