集合的定义,操作及运算 (Python)
集合的定义:
集合和列表([ ]) 与 字典 ( { }) 不同,没有特别的特别的语法格式。可以使用set () 创建。
集合同字典一样是无序的。也是不具有重复性的。因此可以把列表变成集合进行去重。
集合具有特别的关系性能,交集,并集,差集等。
# hanbb come on!
list1 = [1,4,5,7,3,6,7,9] # 列表
s1 = set(list1) # remove repeat,such as 7 ; 自动去重 (列表转化为集合) s2 = set([1,6,0,66,22,8,4]) # another way express set
s3 = set("hello") # 这是字符变成集合吗?
print(s3) # {'h', 'o', 'l', 'e'}
print(s2) # {0, 2, 66, 4, 6, 8, 22}
print(s1) # {1, 3, 4, 5, 6, 7, 9}
集合的基本操作:新增;移除;复制;求长度(没有修改?)
# basic operation
# Add one
s1.add('BB8')
print(s1) # {1, 3, 4, 5, 6, 7, 'BB8', 9}
# add more
s1.update( ["猪八戒","孙悟空"] ) # 注意[] # {1, '孙悟空', 3, 4, 5, 6, 7, 'BB8', 9, '猪八戒'}
print(s1)
# s1.update(2,4,6)
s1.update([2,4,6]) # {1, 2, 3, 4, 5, 6, 7, 9, '猪八戒', 'BB8', '孙悟空'}
print(s1)
s1.update("BB7") # update"BB7" and add "BB8" 区别明显 # {1, 2, 3, 4, 5, 6, 7, 9, '7', 'BB8', '孙悟空', '猪八戒', 'B'}
print(s1) # Remove
# s1.remove("1","2","3") # 不能移除多个 # remove() takes exactly one argument (3 given)
# s1.remove('1') # 数据会出错,为啥呀 # s1.remove('1')
s1.remove('B') # 字母不会,汉字也不会 # {1, 2, 3, 4, 5, 6, 7, 9, '猪八戒', '孙悟空', 'BB8', '7'}
print(s1) # copy
s4 = s2.copy()
print(s2) # length
print(len(s1)) #
集合的关系运算:交集,并集,差集(两个集合位置有影响),对称差集。
# relationship
print(s1.intersection(s2)) # {1, 4, 6}
print(s1.union(s2)) # {0, 1, 2, 3, 4, 5, 6, 7, 66, 9, 8, '7', 'BB8', 22, '猪八戒', '孙悟空'}
print(s1.difference(s2)) # 在1中,不在2中 # {'BB8', 2, 3, '7', 5, 7, 9, '孙悟空', '猪八戒'}
print(s2.difference(s1)) # 在2中,不在1中 # {0, 8, 66, 22}
print(s1.symmetric_difference(s2)) # 对称差集(项在t或s中,但不会同时出现在二者中) # {0, 66, 2, '7', 3, 5, 8, 7, 9, '孙悟空', 22, '猪八戒', 'BB8'}
集合值的访问:
# 访问集合值
print("" in s1) # False
print("BB8" in s1) # True print("" not in s1) # True for i in s1:
print(i) '''1
2
3
4
5
6
7
孙悟空
9
BB8
7
猪八戒'''
集合还是比较容易理解和掌握的,还有操作符号的运算。
集合的定义,操作及运算 (Python)的更多相关文章
- Python 集合的各种操作 数学运算 关系操作 增删改查 生成式
# 集合是无序的 是可变的 不能重复 允许数学运算 分散存储 # 创建# collegel = {'哲学','经济学','法学','教育学'}## # {'教育学', '经济学', '法学', '哲学 ...
- Python【第二课】 字符串,列表,字典,集合,文件操作
本篇内容 字符串操作 列表,元组操作 字典操作 集合操作 文件操作 其他 1.字符串操作 1.1 字符串定义 特性:不可修改 字符串是 Python 中最常用的数据类型.我们可以使用引号('或&quo ...
- Python学习【第6篇】:集合的定义和基本方法
1.概念 (1)不同元素组成 例: s = {1,2,3,4,4,4,4,4,4}print(s)运行结果:{1, 2, 3, 4}因为是不同元素组成,因此去重了 (2)无序 例: s = {&quo ...
- Python集合类型的操作与应用
Python集合类型的操作与应用 一.Python集合类型 Python中的集合类型是一个包含0个或多个数据项的无序的.不重复的数据组合,其中,元素类型只能是固定数据类型,如整数.浮点数.字符串.元组 ...
- 『无为则无心』Python序列 — 22、Python集合及其常用操作
目录 1.Python集合特点 2.Python集合的创建 3.操作集合常用API (1)增加数据 @1.add()方法 @2.update()方法 (2)删除数据 @1.remove()方法 @2. ...
- [PY3]——内置数据结构(6)——集合及其常用操作
集合及其常用操作Xmind图 集合的定义 # set( ) # {0,1,2} //注意不能用空的大括号来定义集合 # set(可迭代对象) In [1]: s=set();type ...
- 【Go语言】集合与文件操作
本文目录 1.数据集合的主要操作 1_1.字典的声明 1_2.字典的初始化和创建 1_3.字典的访问和操作 1_4.其他类型的数据集 2.文件操作 2_1.文件操作概述os包和path包 2_2.文件 ...
- java 集合框架(List操作)
/*list 基本操作 * * List a=new List(); * 增 * a.add(index,element);按指定位置添加,其余元素依次后移 * addAll(index,Collec ...
- redis:set集合类型的操作(无序集合)
1. set集合类型的操作(无序集合) 集合具有无序性(没有顺序).确定性(描述是确定的).唯一性(没有重复的元素) 1.1. sadd key member [member ...] 语法:sadd ...
随机推荐
- msseces.exe频繁出错的原因和解决方法?
关机时会报错,什么内存为只读.. 以下是官方给的解决方案,相信对大部分用户都起作用,在这分享给大家. 对于当前遇到的问题,有可能是由于程序冲突导致.因此建议进入干净启动状态再确认问题是否发生: 1.如 ...
- JavaSE教程-03Java中分支语句与四种进制转换
一.分支语句 计算机源于生活,程序模拟现实生活,从而服务生活 行为模式 1,起床,刷牙,洗脸,吃早餐,上课,回家,睡觉(顺序性) 2,如果时间不太够,打个滴滴快车,如果时间够,坐个地铁(选择性) 3, ...
- git使用方法1
1.新建一个“本地仓库” $ git init 2.配置仓库 >告诉git你是谁 git config user.name lnj >告诉git怎么联系你 git config user. ...
- SurfaceView的基本使用
一.引入: Android提供了View来进行绘图处理,在大部分情况下,View都能满足绘图需求.大家都知道View是通过刷新来重绘视图,Android系统通过发出VSYNC信号来进行屏幕的重绘,刷新 ...
- openjdk7之编译和debug
大家也可以看我的博客: openjdk7之编译和debug,这里格式更好. 为了更好的学习JDK.HotSpot等源码,需要能debug JDK.HotSpot等源码.本文主要讲述,怎么编译open ...
- php面向对象3
类的定义 基本定义 class 类名{ 访问修饰符 成员属性; 访问修饰符 成员方法; } 说明: ①类一定要class关键词修饰 ②类名的规范说明,使用大驼峰法 ③php 中,类名不区分大小写.但是 ...
- MYSQL导入数据报错|MYSQL导入超大文件报错|MYSQL导入大数据库报错:2006 - MySQL server has gone away
导SQL数据库结构+数据时,如果数据是批量插入的话会报错:2006 - MySQL server has gone away. 解决办法:找到你的mysql目录下的my.ini配置文件(如果安装目录没 ...
- .net Kafka.Client多个Consumer Group对Topic消费不能完全覆盖研究总结(一)
我们知道Kafka支持Consumer Group的功能,但是最近在应用Consumer Group时发现了一个Topic 的Partition不能100%覆盖的问题. 程序部署后,发现Kafka在p ...
- CSS的小三角
上三角▲ width: 0; height: 0; line-height: 0; font-size: 0; border-width: 10px; border-style: solid; bor ...
- java设计模式综合项目实战视频教程
java设计模式综合项目实战视频教程 视频课程目录如下: 第01节课:本课程整体内容介绍:X-gen系统概况,包括:引入.X-gen项目背景.X-gen的HelloWorld第02节课:X-gen整体 ...