1. 集合的定义

关键字:set
标识符:{},set()
数据类型:支持数字、字符串和元组类型,不支持列表、字典、集合类型
无序数据,即没有索引值
所有数据不会重复
数据去重:身份证订单号id
操作:增删改查列表、元组 -- 索引字典   --key集合   --特点不能查看中间的某一个元素不能修改的操作
# 定义一个空集合
# 获取集合的长度 len()
s = set()
print(s,len(s),type(s))# 定义一个非空集合
# 查看集合类型 type()
s1 = {True,True,"hello",(1,2,3)}
print(s1,len(s1),type(s1))# 集合不支持拼接和多次输出

2. 集合操作---增

集合增加元素集合.add():添加元素,参数只能是数字类型和字符串集合.update():添加元素,参数可以是列表,元组,字典,参数可以有多个,用逗号隔开
s1 = {"Google", "Runoob", "Taobao"}
# 给s1添加元素'baidu'
print(s1)
s1.add('baidu')
print(s1)# 给s1添加元素[1,2,3]
s1.update((1,2,3))
s1.update({'name':'kate'})  #对于字典,加入的是字典的key,不是value
s1.update([1,2,{3,4}])  #TypeError: unhashable type: 'set'
print(s1)# 给s1添加元素[1,2,3],{'bai','du'}
s1.update([1,2,3],{'bai','du'})
print(s1)

3. 集合操作---删

集合删除元素:集合.pop():随机删除元素集合.remove(value):指定删除元素,如果元素不存在,则会发生错误集合.discard(value):指定删除元素,元素不存在,也不会发生错误集合.clear():清空集合
s2 = {"Google", "Runoob", "Taobao","baidu"}
# 删除元素Taobao
s2.remove('Taobaossfdfagag')  #KeyError: 'Taobaossfdfagag'
print(s2)# 删除元素Runoob111
s2.discard('Taobaossfdfagag')  #不会报错,不会中断代码
print(s2)# 随机删除一个元素
s2.pop()  #数据类型:列表、元组--索引值   字典--key  集合--不需要
print(s2)# 清空集合
s2.clear()  #清空
print(s2)

4. 集合运算

集合可以用于运算,比如求交集、并集、差集等交集:集合1 & 集合2   或者   集合1.intersection(集合2)并集:集合1 | 集合2   或者   集合1.union(集合2)差集:集合1 - 集合2   或者   集合1.difference(集合2)
s1 = {'刘德华','周润发','范冰冰'}
s2 = {'陈奕迅','周杰伦','刘德华'}# 输出s1与s2交集
print(s1 & s2)
print(s1.intersection(s2))# 输出s1与s2并集
print( s1 | s2)
print(s1.union(s2))# 输出s1与s2差集
print(s1- s2)
print(s1.difference(s2))# 输出s2与s1差集
print(s2- s1)
print(s2.difference(s1))

5. 转换函数

 dict(其他类型数据),将其他类型数据转为字典元组tpl = (('name','muzi'),('age',18))转换为字典列表lst = [('name','Lisa'),('age',18)]转换为字典

【python】集合的定义与操作相关推荐

  1. python集合应用场景_十、python 集合的定义与使用

    一.集合的定义 定义:由不同元素组成的集合,集合是一组无序排列 可hash值,可作为字典的key. 特性:集合的目的是将不同的值存放在一起,不同的集合间用来做关系运算,无须纠结于集合中的单个值. (1 ...

  2. Python集合的定义

    集合的定义 变量 = {数据1, 数据2, 数据3....} 空集合:set() 集合是一个无序的 不重复的数据序列 # 集合: 集合是一个无序,不重复的数据序列 # 无序: 程序员无法控制其排不顺序 ...

  3. python集合的定义及特性

    1.集合的定义 集合(set)是一个无序的不重复元素序列 可以使用大括号 { } 或者 set( ) 函数创建集合 注意:创建一个空集合必须用 set( ) 而不是 { },因为 { } 是用来创建一 ...

  4. python集合的定义方式_11-Python基础知识学习—集合类型

    定义集合 集合和 list.tuple.dict 一样都可以存放多个值,但是集合主要用于: 去重和关系运算 .在{}内用逗号分隔开多个元素就是集合,它具备以下三个特点: 每个元素必须是不可变类型 集合 ...

  5. Python 集合的定义以及常用运算及函数

    定义(集合内可以有多个元素,但是每个元素都必须是不可变类型,即可hash类型,集合内的元素唯一,集合是无序的): pythons=['a','b','c','d','e','f'] s1=set('h ...

  6. 列表、元组、字典、集合的定义、操作与综合练习

    l=['A','B','C'] t={'A','B','C'}l.append('B')print(l)scores=[66,77,88]d={'A':66,'B':77,'C':88} d['B'] ...

  7. Python集合类型详解(一)——集合定义与集合操作符

    今天继续给大家介绍Python相关知识,本文主要内容是Python集合类型定义与集合操作符. 一.集合类型定义 在Python中,集合是一种非常重要的组合数据类型.Python中的集合与数学中的集合非 ...

  8. Python(IT峰)笔记07-数据类型详解-元祖的定义与操作,元祖推导式,元祖生成器,yield关键字,字典及定义,字典所支持的操作,zip研所函数,dict转型,字典函数,集合,冰冻集合,集合推导

    1.元祖的定义 一组有序数据的组合,元祖一旦定义不可修改,是不可变数据类型 定义空元祖 变量=() 变量=tuple() 变量=(内容1,内容2,内容3,--)直接赋值 特列:变量=内容1,内容2,内 ...

  9. 转: Python集合(set)类型的操作

    python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和 ...

最新文章

  1. html实现让电脑断网的功能,13. Electron 断网提醒功能的实现
  2. [LeetCode] NO.292 Nim Game
  3. C++ 控制结构和函数(一) —— 控制结构
  4. thinkphp v5.0.24 密码爆破_轻松搭建基于 Serverless 的 ThinkPHP 应用
  5. c++ 中 define
  6. java做抽奖小程序_基于JavaScript实现简单的随机抽奖小程序
  7. 自定义UITabBar的两种方式
  8. Oracle instr用法
  9. docker搭建sonarqube做代码审计
  10. 无U盘安装系统(到固态硬盘)教程
  11. getchar()用法
  12. 他安息,只因天使离去
  13. Gentoo Linux,Gentoo Linux是什么
  14. R语言ggplot2可视化多项式曲线、多项式方程以及多项式模型评估指标R方:使用ploynom包拟合三阶多项式模型
  15. Communications link failure错误(亲测有效)
  16. 动态爱心和3D旋转烟花代码
  17. 【视频分享】尚硅谷Java视频教程_Spring注解驱动开发视频教程
  18. 小梅哥FPGA学习笔记——开发流程及仿真示例
  19. 计算机科技论文摘要,计算机科技论文摘要怎么写 计算机科技论文摘要范文参考...
  20. Pragmatic eBook 介绍 :Test-Driving JavaScript Applications

热门文章

  1. Linux tar命令
  2. Oracle join多表查询
  3. python中把输出结果写到一个文件中_如何将脚本输出写入文件和命令行?
  4. 公司支付给临时工的劳务费,无法取得发票如何做账?
  5. 压测学习总结(5)——如何使用Jmeter 进行简单的并发操作
  6. Redis学习总结(10)——缓存雪崩、缓存穿透、缓存并发、缓存预热、缓存更新、缓存降级、缓存算法的概念及解决思路总结
  7. Linux学习总结(38)——Linux超实用的30个命令
  8. java用netty做tcpserver接收c++消息_netty案例,netty4.1基础入门篇四《NettyServer收发数据》...
  9. golang mysql单例模式_Golang设计模式——单例模式
  10. golang 线程 Java线程_Java线程只能有上千个,而Go的Goroutine能有上百万个