python数据类型之集合(set)和其常用方法
集合是一个无序的,不重复的数据组合 作用(集合的重点):
1.去重,把一个列表变成集合就自动去重了
2.关系测试,测试两组数据库之前的交集、差集、并集等关系
s = {1, 1, 2, 2, 3, 4, 'a', 'a', '!', '!'}
print(type(s)) # <class 'set'>
print(s) # 自动去重 {1, 2, 3, 4, 'a', '!'} # add 增加值,不能加一样的。只能加1个值,加多个值会报错
# pop 随机删除一个值,因为集合是无序的
# remove 写谁删谁
# discard 和remove的区别是没有的话不会报错
# update 和add不同的是可以加多个值 加的时候要加别的集合huo{'xxx'},直接加字符串的话会把字符串拆分开加进去 # 关系测试 iphone7 = {'alex', 'rain', 'jack', 'mark'}
iphone8 = {'alex', 'jack', 'jucy', 'emma'} # 交集
print(iphone7.intersection(iphone8)) # {'jack', 'alex'} 或 iphone7 & iphone8 # 差集
print(iphone7.difference(iphone8)) # {'rain', 'mark'} 或 iphone7 - iphone8 求只买iphone8的就反过来 # 并集 (把这两个列表加起来)
print(iphone7.union(iphone8)) # 或 iphone7 | iphone8。谁union谁都行, {'rain', 'jack', 'jucy', 'mark', 'emma', 'alex'} # 对称差集,取交集相反(把不相交的取出来,或买了iphone7,或买了iphone8)
print(iphone7.symmetric_difference(iphone8)) # {'rain', 'jucy', 'mark', 'emma'}
# 等于下面步骤
s3 = iphone7 | iphone8
s4 = iphone7 & iphone8
print(s3 - s4) # {'jucy', 'rain', 'mark', 'emma'} # 子集和超集 iphone7.add('jucy')
iphone7.add('emma') print(iphone7)
print(iphone7.issuperset(iphone8)) # True 或 >= iphone7>=iphone8
print(iphone8.issubset(iphone7)) # True 或 <= iphone8<=iphone7 # 判断是否不相交
print(iphone7.isdisjoint(iphone8)) # False # 把差集赋值给iphone7
iphone7.update({'ann', 'li'})
print(iphone7.difference(iphone8)) # {'mark', 'rain', 'ann', 'li'}
iphone7.difference_update(iphone8)
print(iphone7) # {'li', 'mark', 'rain', 'ann'}
python数据类型之集合(set)和其常用方法的更多相关文章
- 【转】Python数据类型之“集合(Sets)与映射(Mapping)”
[转]Python数据类型之“集合(Sets)与映射(Mapping)” 一.集合类型(Sets) 集合对象是不同的(不可重复)hashable对象的无序集合.常见用法包括:成员关系测试.移除序列中的 ...
- Python笔记_第一篇_面向过程_第一部分_5.Python数据类型之集合类型(set)
集合!Python中的集合数据基本上是为了方便数学计算使用的. 什么是集合? 集合就是“确定的一堆东西”.集合里面的东西叫做元素. 特点:1. 集合里面是没有重复的元素的. 2. ...
- 7、python数据类型之集合set
数据类型之集合setset 不允许重复的无序集合,不能通过下标取值,因为无序1.创建 创建空集合 s ={} 默认类型为字典,所以不是空集合,空集合如下 s = set() s = { ...
- Python—数据类型之集合(Set)
1.集合是一个无序的,且不重复元素的集合.它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)的. 2.基本功能包括关系测试和消除重复元素.注意:集合存在的意义就是去 ...
- python 数据类型之集合
一.集合的定义: 定义:由不同元素组成的集合,集合中是一组无序排列的可hash值,可以作为字典的key. 特性:集合的目的是将不同的值存放到一起,不同的集合间用来做关系运算,无需纠结于集合中单个值 二 ...
- Python基础-python数据类型之集合(四)
集合 集合是一个无序的,不重复的数据组合,基本功能包括关系测试和消除重复元素. 集合对象还支持 union,intersection,difference和 sysmmetric difference ...
- python数据类型之列表(list)和其常用方法
列表是python常用数据类型之一,是可变的,可由n = []创建,也可由n = list()创建,第一种方法更常用. 常用方法总结: # 创建方法 n = [] 或者 n = list() # in ...
- Python数据类型-8 集合set
集合set set集合是一个无序不重复元素的集,基本功能包括关系测试和消除重复元素.集合使用大括号({})框定元素,并以逗号进行分隔.但是注意:如果要创建一个空集合,必须用 set() 而不是 {} ...
- Python数据类型之“集合(Sets)与映射(Mapping)”
一.集合类型(Sets) 集合对象是不同的(不可重复)hashable对象的无序集合.常见用法包括:成员关系测试.移除序列中的重复.以及科学计算,例如交集.并集.差分和对称差分.通俗点来说,集合是一个 ...
随机推荐
- 【手撸一个ORM】第一步、实体约定和描述
一.约定 数据实体必须实现 IEntity 接口,该接口定义了一个int类型的Id属性,既每个实体必须有一个名称为Id的自增主键. 若数据表的主键列名称不是Id,可以通过 [MyKey("主 ...
- High waits on control file sequential read
High waits on control file sequential read (文档 ID 2277867.1) In case we run into an issue where cont ...
- 教你如何在 IDEA 远程 Debug ElasticSearch
前提 之前在源码阅读环境搭建文章中写过我遇到的一个问题迟迟没有解决,也一直困扰着我.问题如下,在启动的时候解决掉其他异常和报错后,最后剩下这个错误一直解决不了: [2018-08-01T09:44:2 ...
- 常见的JedisConnectionException 异常
最近在使用redis出现以下的异常: 1.redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectExcept ...
- 一个例子说明Jsp三大重要内置对象的生命周期
此处Jsp的三大内置对象指:request,session以及application.他们共有的方法:setAttribute,getAttribute,方法名和方法作用都是相同的,但是作用范围不一样 ...
- 使用 Kendo UI 库实现对象的继承
使用 Kendo UI 库实现对象的继承 javaScript 也是一种面向对象的开发语言,但和 C++,Java,C# 所不同的是,它的对象不是基于类(Class),而是基于对象原型(ProtoTy ...
- centos下无法直接删除乱码文件及文件夹解决方案
不知道怎么回事今天在系统上发现有一个名字为“\”的文件,使用rm -f \ 无法删除,最后没办法只能使用文件的inode号进行删除,以下是相关步骤: [oracle@prod-db ~]$ ls -i ...
- js倒计时小插件(兼容大部分浏览器)
精确到天的倒计时 <script language="JavaScript"> <!-- // (c) Henryk Gajewski var urodz= ne ...
- JAVA并发编程:相关概念及VOLATILE关键字解析
一.内存模型的相关概念 由于计算机在执行程序时都是在CPU中运行,临时数据存在主存即物理内存,数据的读取和写入都要和内存交互,CPU的运行速度远远快于内存,会大大降低程序执行的速度,于是就有了高速缓存 ...
- JavaScript操作DOM
1.DOM对象简介: 什么是DOM:(Document Object Model) 译为文档对象模型,是 HTML 和 XML 文档的编程接口. 2.DOM HTML 节点树:指的是DOM中为操作 ...