集合的定义,操作及运算 (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 ...
随机推荐
- Spring Boot的properties配置文件读取
我在自己写点东西玩的时候需要读配置文件,又不想引包,于是打算扣点Spring Boot读取配置文件的代码出来,当然只是读配置文件没必要这么麻烦,不过反正闲着也是闲着,扣着玩了.具体启动过程以前的博客写 ...
- docker dead but pid file exists 问题
You may have to enable the public_ol6_latest repo in order to get this package. sudo yum-config-mana ...
- Mac OS X 安装后的简单设置
让Mac拥有类似apt-get的功能--安装Homebrew Homebrew是一个包管理器,用于在Mac上安装一些OS X没有的UNIX工具(比如著名的wget). 国内下载地址:http://ww ...
- 快速排序(Quicksort)的Javascript实现
日本程序员norahiko,写了一个排序算法的动画演示,非常有趣. 这个周末,我就用它当做教材,好好学习了一下各种排序算法. 排序算法(Sorting algorithm)是计算机科学最古老.最基本的 ...
- [转] .NET领域驱动设计—实践(穿过迷雾走向光明)
阅读目录 开篇介绍 1.1示例介绍 (OnlineExamination在线考试系统介绍) 1.2分析.建模 (对真实业务进行分析.模型化) 1.2.1 用例分析 (提取系统的所有功能需求) 1.3系 ...
- 出位的template.js 基于jquery的模板渲染插件
找了好几款基于jquery的模板渲染插件,无一感觉很难用(教程较少.绑定不统一),也可能我智商问题,比如jquery template.js .jtemplate.js. 然后在github上找到这一 ...
- Owl Carousel幻灯片插件的使用
Owl Carousel 是一个强大.实用但小巧的 jQuery 幻灯片插件,它具有一下特点: 兼容所有浏览器 支持响应式 支持 CSS3 过度 支持触摸事件 支持 JSON 及自定义 JSON 格式 ...
- MySQL数据表的创建、查看、插入
数据表:数据表(或称表)是数据库最重要的组成部分之一,是其他对象的基础. 1.首先我们打开一个数据库(这里我打开的是新创建的一个aaa数据库). 打开数据库:use + 数据库名; 2 ...
- 理解容器之间的连通性 - 每天5分钟玩转 Docker 容器技术(34)
通过前面小节的实践,当前 docker host 的网络拓扑结构如下图所示,今天我们将讨论这几个容器之间的连通性. 两个 busybox 容器都挂在 my_net2 上,应该能够互通,我们验证一下: ...
- java 字符串替换函数replaceAll 一次同时替换多个字符串
public static void main(String[] args) throws Exception { String src = "南京市玄武区北京东路徐州市鼓楼区戏马台&quo ...