4.93Python数据类型之(8)集合
目录
目录
前言
集合是无序的,不可访问的,不可重复的元素的集合。用{}来标志的数据类型。
(一)基本概念
==1.1有序于无序==
有序与否的定义是:是否能够通过下标序列来访问元素。
例如:列表 list[2], string[0] ,tuple[0]等,是有序的。
而:集合是不可以通过下标来访问的,则是无序的。
==1.2是否随机访问==
能否访问某个元素。
==1.3重复性==
Python集合和数学里的集合类似,集合是互异的,即不可重复。
==1.4可变与不可变的集合==
可不可变的集合判断依据是:能否对其进行增删改。
(1)可变集合
创建有两种方式
- 直接用{},例如:s = {1, 2, 3}
- 使用set()方法,例如:s=set(iterable) , iterable可迭代对象。

(2)不可变集合
创建方式只有一种:
frozeset(iterabel), froze--冻结

(3)集合的注意事项
空集合:使用 s = set()来创建,而不是用 s = {}
集合的元素要求:必须是不可变的类型。
(二)集合的增删改查
下面都是对于可变集合的操作。
==2.1集合的增加==
s.add(var) 方法

==2.2集合的删除==
2.2.1remove()方法
remove()方法是根据某个元素来删除某个元素。当没有该元素时会报错。

2.2.2discard()方法
与remove()方法操作和功能一样,唯一的区别是当没有该元素时,不做任何操作。

2.2.3pop()方法
pop()方法是从前面删除元素。并返回删除的元素。

2.2.4clear()方法
clear()方法是清空集合。

==2.3集合的修改==
集合是不可变的,即不可更改。
==2.4集合的查看==
使用:for in s: 进行遍历查看。

==2.5不可变集合的查看==
同样是用for i fs: 进行查看。

(三)集合的运算
==3.1集合的交集==
s1.intersection(s2) 或者 "&"


==3.2集合的并集==
s1.union(s2) 或者 "|"

==3.3集合的差集==
s1.defference(s2) 或者 "-"

==3.4集合的判断==
(1)判断是否相交
s1.isdisjoint(s2)

(2)判断是否包含
s1.issuperset(s2)

(3)判断是否包含于
s1.issubset(s2)

作者:Mark
日期:2019/02/01 周五
4.93Python数据类型之(8)集合的更多相关文章
- python之数据类型补充、集合、深浅copy
一.内容回顾 代码块: 一个函数,一个模块,一个类,一个文件,交互模式下,每一行就是一个代码块. is == id id()查询对象的内存地址 == 比较的是两边的数值. is 比较的是两边的内存地址 ...
- python基础之数据类型操作补充,集合及其操作,深浅拷贝
内容概要: 数据类型操作补充 集合及其操作 深浅拷贝1.基础数据类型补充 1.1字符串的操作补充li = ["李嘉诚", "麻花藤", "黄海峰&qu ...
- Day054--MySQL, 创建用户和授权, 数据类型, 枚举和集合, 约束,唯一, 主键,外键
创建用户和授权 1.创建用户: # 指定ip:192.118.1.1的mjj用户登录 create user 'mjj'@'192.118.1.1' identified by '123'; # 指定 ...
- day8数据类型补充,集合,深浅拷贝
思维导图: 集合的补充:下面的思维导图有一个点搞错了,在这里纠正一下,没有合集,是反交集,^这个是反差集的意思 . 交集&,反交集^,差集-,并集|,然后就是子集和超集 数据类型补充: ''' ...
- [Day6]引用数据类型、ArrayList 集合
1.类的定义与使用 (1)类的定义格式 创建java文件,与类名相同 public class 类名{ 数据类型 属性名称1: 数据类型 属性名称2: … } (2)使用格式 导包:我们将所有的类 ...
- Python基础学习Day7 基础数据类型的扩展 集合 深浅copy
一.基础数据类型的扩展 1.1GBK ---> UTF - 8 # str --->bytes s1 = '太白' # 字符串是unicode编码 b1 = s1.encode('gbk' ...
- 基本数据类型补充 set集合 深浅拷贝
一.基本数据类型补充 1,关于int和str在之前的学习中已经介绍了80%以上了,现在再补充一个字符串的基本操作: li = ['李嘉诚','何炅','海峰','刘嘉玲'] s = "_&q ...
- Python之路-基础数据类型之字典 集合
字典的定义-dict 字典(dict)是python中唯⼀的⼀个映射类型.他是以{ }括起来的键值对组成,字典是无序的,key是不可修改的.dic = {1:'好',2:'美',3:'啊'} 字典的操 ...
- python基础(9):基本数据类型四(set集合)、基础数据类型补充、深浅拷贝
1. 基础数据类型补充 li = ["李嘉诚", "麻花藤", "⻩海峰", "刘嘉玲"] s = "_&qu ...
随机推荐
- 通过spring抽象路由数据源+MyBatis拦截器实现数据库自动读写分离
前言 之前使用的读写分离的方案是在mybatis中配置两个数据源,然后生成两个不同的SqlSessionTemplate然后手动去识别执行sql语句是操作主库还是从库.如下图所示: 好处是,你可以人为 ...
- zabbix 自定义监控项简单案例
例如:获取被监控主机的登录用户数 以uptime为例: 输入命令:uptime | awk '{print $6}' 可以获得当前登录用户数(不通终端打印出的位置不同) 1.被监控主机修改zabbi ...
- elk + filebeat,6.3.2版本简单搭建,实现我们自己的集中式日志系统
前言 刚从事开发那段时间不习惯输出日志,认为那是无用功,徒增代码量,总认为自己的代码无懈可击:老大的叮嘱.强调也都视为耳旁风,最终导致的结果是我加班排查问题,花的时间还挺长的,要复现问题.排查问题等, ...
- MyBatis从入门到放弃二:传参
前言 我们在mapper.xml写sql,如果都是一个参数,则直接配置parameterType,那实际业务开发过程中多个参数如何处理呢? 从MyBatis API中发现selectOne和selec ...
- JavaScript之八皇后问题(递归)
八皇后问题,是一个古老而著名的问题,该问题最早由国际西洋棋棋手马克斯·贝瑟尔(Max Bezzel)于1848年提出.八皇后问题的具体描述为:在\(8\times8\)的国际象棋上摆放8个皇后,使 ...
- .net core 基于IIS发布
原文链接: https://www.cnblogs.com/gx018/p/7874060.html
- 4款开源免费的数据可视化JavaScript库
概述:交互式数据可视化在很大程度上取决于JavaScript库的任务能力.在这篇文章中,我们将看看四个JavaScript库:D3,InfoVis,Processing.js,和Recline.js. ...
- 在visual studio中设置点击左边选项卡中的类文件,右侧解决方案跳到对应的文件
在visual studio中如何设置点击左边选项卡中的类文件,右侧解决方案跳到对应的文件?比如说,VS上方的选项卡文件较多,我点击选项卡上的任一文件,解决方案中对应的文件突出显示 ...
- 【协议】5、gossip 协议
Gossip是一种去中心化.容错并保证最终一致性的协议. Background:分布式环境 Gossip是为了解决分布式遇到的问题而设计的.由于服务和数据分布在不同的机器上,节点之间的每次交互都伴随着 ...
- 在C#中的构造函数和解析函数
构造函数 class A() { A() {Console.write("构造函数");} } 当你在程序种出现 A a=new A();的时候 程序自动执行 构造函数 A() { ...