python七类之集合
集合
一、关键字 : set
定义是 s = {} #当里面没有元素的时候表现为字典数据类型
s = {} #空的{}代表空的字典,而不是集合
print(type(s))
集合是不可哈希的(可变的),也是无序的(没有索引),集合内的元素必须是可哈希的(不可变得)。
二、方法:
s = {1,2,3,4,5,6,7,8,9}
增:
.add(元素) #随记添加在集合的某个位置
.update() #迭代添加
#添加
s.add('a') #添加指定元素
s.update('alex') #添加可迭代元素
删:
.pop() #随机删除 ,有返回值,删除什么返回什么元素
.clear() #清空集合
del set #删除整个集合
.remove(元素) #删除指定的元素
#删除
s.remove(1) #删除指定元素
s.pop() #随机删除 删除什么返回什么
s.clear() #清空集合
print(s) #字典自动去重
改:
只能先用remove()把要改的元素删了,在把需要的元素添加进去
三、集合的特性:
集合是可以天然去重!
例题: lis = [1,2,1,2,1,25,1,5,6,9,8,115,226,11,22,11,22]用一行代码去重?
print(list(set(lis))) #将列表转换为集合去重,然后在换回列表即可
四、集合的其他操作:
& 和 intersectiion #取两个集合的交集 没有交集就返回空集合
| #取两个集合的并集,合并两个集合
s - s1 #取后面相对于前面的补集
s ^ s1 #反交集,取两个集合不重合的元素
s < s1 #判断s是不是s1的子集
s1 > s #判断s1是不是s的父集
.frozenset(): #将集合冻住,即变成不可变得数据(可哈希)
a = frozenset({1,2,3,4}) #将集合冻住,变成不可变得数据,即可以当字典的键 dic[a :1] print(dicup)
python七类之集合的更多相关文章
- python七类之字典详解
一.字典 一.关键字:dict 1.字典是唯一的键值对数据,其表现形式: dic = {键:值},字典里的键必须保证是唯一的 2.键必须是不可变的数据类型: a.故列表是不能当键的 b.所 ...
- python七类之整型布尔值
整型与布尔值 一.关键字:整型 --->int 布尔值----->bool : True 真 False 假 1.整形和布尔值都是不可变得不可迭代的数据类型 2.整型: 主 ...
- python七类之列表元组
列表 一.关键字: list lst = [ , , , , , , ,] lst = [1,2,3,4] 二.方法: 1.增加: . append( ) #追加,添加元素进列表最后 ls ...
- python七类之字符串
字符串 一.关键字:str 字符串是不可变的可迭代的数据类型 二.方法: name = 'alex uwu sir' .title #标题 使首字母大写 只要有特殊字符隔开,才能分别认为是多个单词 ...
- Python虚拟机类机制之绑定方法和非绑定方法(七)
Bound Method和Unbound Method 在Python中,当对作为属性的函数进行引用时,会有两种形式,一种称为Bound Method,这种形式是通过类的实例对象进行属性引用,而另一种 ...
- python-集合(第二篇(七):集合)
第二篇(七):集合 python 集合 集合标准操作 摘要: 说明: ·类似于数学中学的集合,Python中的集合可以实现去重的功能,通过set()函数来实现: ·sets支持x in set, ...
- 从C#到Python —— 4 类及面向对象
http://www.cnblogs.com/yanxy/archive/2010/04/04/c2p_4.html 如果你熟悉C#,那么对类(Class)和面向对象(Object Oriented) ...
- Python基础-类
Python基础-类 @(Python)[python, python基础] 写在前面 如非特别说明,下文均基于Python3 摘要 本文重点讲述如何创建和使用Python类,绑定方法与非绑定方法的区 ...
- 1.面向过程编程 2.面向对象编程 3.类和对象 4.python 创建类和对象 如何使用对象 5.属性的查找顺序 6.初始化函数 7.绑定方法 与非绑定方法
1.面向过程编程 面向过程:一种编程思想在编写代码时 要时刻想着过程这个两个字过程指的是什么? 解决问题的步骤 流程,即第一步干什么 第二步干什么,其目的是将一个复杂的问题,拆分为若干的小的问题,按照 ...
随机推荐
- new era
新的博客,将会记录我在工作和学习中遇到的问题以及总结...
- Java学习-1
数组 运算符 包 访问权限 修饰符 数组 1. 数组的声明: int[] a; 2. 数组的创建 使用new运算符数组的创建int[] a = new int[100] 数组的长度不要求是常量:new ...
- 安装SCOM Gateway Server
安装SCOM Gateway Server 1.为SCOM Gateway Server申请证书,导入CA证书链2.将安装介质Support Tools下AMD64下的 Microsoft.Enter ...
- ESS控制台发布新功能:创建多实例规格的伸缩配置
背景 原弹性伸缩ESS服务限定,生效的伸缩配置中只能对应一种实例规格,这样就会存在如果生效的配置中的实例规格的库存不足(高配实例规格通常更容易出现库存不足的情况)时, 用户配置好的伸缩规则以及伸缩组对 ...
- Java中面向对象三大特征
也就是说在这里"人"是多态的, 在不同的形态时,特征行为是不一样的, 这里的"人", 同时有两种形态,一种是教师形态,一种是学生形态,所对应的特征行为分别是&q ...
- kafka部分重要参数配置-broker端参数
broker端参数主要在config/server.properties目录下设置: 启动命令:nohup ./kafka-server-start.sh -daemon ../config/serv ...
- BT提权wind2008R2
昨天中午打开电脑,对着菜刀在那翻啊翻,找到一个64bit的os. 因为这个ip不在曾经提权过的主机列表里面,心想这应该是个低权限的网站,顺手打个whoami试试,结果给我返回了"nt aut ...
- JS如何去掉一个数组的重复元素 (数组去重)
一.思路如下: 定义一个新数组,将老数组遍历一遍,再进行判断,如果新数组里面没有老数组的元素就添加,否则就不添加,最终输出整个新数组. 二.代码如下: var arr = ["a" ...
- SVG中的元素属性
SVG attributes by category Animation event attributes onbegin, onend, onload, onrepeat Animation att ...
- BZOJ3697:采药人的路径(点分治)
Description 采药人的药田是一个树状结构,每条路径上都种植着同种药材. 采药人以自己对药材独到的见解,对每种药材进行了分类.大致分为两类,一种是阴性的,一种是阳性的. 采药人每天都要进行采药 ...