单元概述
主要解决问题:让程序更好地处理一组数据
三类重要组合数据类型:集合类型、序列类型和字典类型

学完本章,我们能够在头脑中建立集合、序列和字典的模式来表达对一组数据的表达和处理

1. 定义

集合是多个元素的无序组合
集合中的元素不能重复
集合中的元素是不可变数据类型-否则可能打破上一条

不可变数据类型有:整数、浮点数、负数、字符串、元组

2. 表示

集合用大括号{}表示,元素之间用逗号分隔
建立集合使用{}或者set() -建立空集合必须使用set()

A = {"python",123,("python",123)}
B = set("pypy123")
print(A)
print(B)

输出
{‘python’, (‘python’, 123), 123}
{‘3’, ‘1’, ‘2’, ‘p’, ‘y’}//注意,集合中元素并无顺序

3. 集合操作符

① 并 |
② 差 –
③ 交 &
④ 并减交 ^

⑤ 关系操作符 判断一个集合是否包含在另一个当中 返回True/False
< <= > >=
⑥ 增强操作符-用S和T的操作结果更新S

A = {"p","y","python",123,("python",123)}
B = set("pypy123")
print(A-B)

结果
{‘python’, 123, (‘python’, 123)}
4. 集合处理方法
增加元素 S.add(x)
删除元素 S.discard(x)S.remove(x) 前者删除不存在元素不会报错,后者会
清空集合 S.clear()
随机取出元素并更新集合 S.pop() 如果S为空,返回异常
复制集合 S.copy() 返回集合S的一个副本
求元素个数 len(S)
判断元素是否在集合S中 x in S 返回True/False 对应有 x not in S
转为集合类型 set(x)

使用for in遍历集合的时候,集合的顺序是不确定的
(集合在定义时有存储顺序,但这个顺序程序员无法利用)

A = {"A","B",123}
for item in A:print(item,end="")

输出
B123A

也可以用while对集合进行遍历

A = {"A","B",123}
try:while True:print(A.pop(),end="")
except:pass
print("",A)

输出
B123A set()
5. 集合类型应用场景
① 包含关系的比较,即已知一组数据,如何判断另一组或者其他数据是否在当中

sss = "p" in {"p","y",123}
print(sss)
ttt = {"p"} > {"p","y",123}
print(ttt)

输出
True
False
② 数据去重,即将一个有重复类型的列表,变成一个无重复类型的

ls = ["p","p","y","y",123]#列表
s = set(ls)#集合
lt = list(s)#列表
print(lt)

输出
[‘p’, 123, ‘y’]

出处:北理工Python慕课

Python组合数据类型之集合类型相关推荐

  1. Python组合数据类型之序列类型

    单元概述 主要解决问题:让程序更好地处理一组数据 三类重要组合数据类型:集合类型.序列类型和字典类型 学完本章,我们能够在头脑中建立集合.序列和字典的模式来表达对一组数据的表达和处理 1. 定义 序列 ...

  2. Python组合数据类型之字典类型

    单元概述 主要解决问题:让程序更好地处理一组数据 三类重要组合数据类型:集合类型.序列类型和字典类型 学完本章,我们能够在头脑中建立集合.序列和字典的模式来表达对一组数据的表达和处理 1. 定义 首先 ...

  3. Python组合数据类型:容器类型总览,(不)可变数据类型immutable、(不)可迭代对象iterable、迭代器iterator、生成器generator、语法糖

    一.组合数据类型container objects 组合数据类型container objects:能够表示多个数据的类型 集合类型:集合类型是一个元素集合,元素无序不重不变 序列类型:序列类型是一个 ...

  4. 07 Python 组合数据类型(集合、序列、元组、列表)

    集合类型及操作 集合类型定义 集合是多个元素的 集合类型与数学中的集合概念一致 集合元素之间无序,每个元素唯一,不存在相同元素 集合元素不可更改,不能是可变数据类型 集合是多个元素的无序组合 集合用大 ...

  5. 组合数据类型(集合)

    组合数据类型包括集合类型及操作.序列类型及操作(元组类型和列表类型).字典类型及操作 集合是多个元素的无序组合 集合类型与数学中的集合概念一致,数学中的集合是指具有某种特定性质的对象汇总而成的集体,其 ...

  6. python组合数据类型有哪些_Python学习之组合数据类型

    一.概述 计算机不仅仅要对单个变量表示的数据进行处理,还需要对一组数据进行批量处理.如: 给定一组单词{python,data,function,list,loop},计算并输出每个单词的长度. 给定 ...

  7. Python组合数据类型:字典dictionary

    一.组合数据类型container objects 组合数据类型container objects:能够表示多个数据的类型 集合类型:集合类型是元素集合,元素无序不重不变 序列类型:序列类型是元素向量 ...

  8. Python组合数据类型:序列sequence,列表list、元组tuple

    一.组合数据类型container objects 组合数据类型container objects:能够表示多个数据的类型 集合类型:集合类型是一个元素集合,元素无序不重不变 序列类型:序列类型是一个 ...

  9. 第四章 Python组合数据类型

    第四章 组合数据类型 4.1 列表 4.1.1 列表的表达 序列类型:内部元素有位置关系,能通过位置序号访问其中元素 列表是一个可以使用多种类型元素,支持元素的增.删.查.改操作的序列类型 ls = ...

最新文章

  1. c++ opencv实现区域填充_使用OpenCV实现图像覆盖
  2. 数据不够,Waymo用GAN来凑:生成逼真相机图像,在仿真环境中训练无人车模型...
  3. (转)详解Vs2008下打包安装程序的一些技巧(含win7下提权限、卸载以及安装时定向到网页)...
  4. [react] 什么渲染劫持?
  5. 人工智能进行时:人类的未来与未来的人类
  6. 9.特殊权限 软连接 硬链接
  7. 我是如何在都柏林的一次中转中无意中写了维基百科页面的
  8. win10更新后无法进入linux,双系统win10更新后无法进入linux
  9. 函数无法识别_IF函数初级用法之一
  10. java调用打印机没反应_java代码调用打印机没反应
  11. 【lphtw】第三弹笔记ex24-ex35
  12. MAC创建ipv6热点
  13. 关于惠普暗影精灵2 pro用一段时间之后,插上电源充不了电的问题
  14. 转: 雅虎35条优化黄金守则
  15. 招聘 iOS 全栈工程师 欢迎加入 ArcBlock 中国研发中心
  16. ubuntu16.04 创建用户,赋予权限
  17. 2020年计算机专业研究生考试时间,2020计算机考研考试时间及考试内容
  18. 使用计算机配置路由器,用命令配置路由器基础(
  19. 连续被爆押金退款难  共享汽车会否走向和共享单车一样的宿命?
  20. Spring Boot 2.X + Shiro 优雅解决 session 跨域问题

热门文章

  1. 如何查看Linq to SQL运行时,实际执行的Sql语句
  2. WannaCry 不相信眼泪 它需要你的安全防御与响应能力
  3. 中国电信换将 三家运营商未来将如何争战
  4. FutureTask中Treiber堆的实现
  5. MyCAT常用分片规则之分片枚举
  6. frame,iframe,frameset之间的关系与区别
  7. C++中关于流的概念
  8. Study on Android【四】--显示控件使用
  9. 阿里P7架构师告诉你Java架构师必须知道的 6 大设计原则
  10. 关闭Windows 8的metro UI的方法汇总