鄙人学习笔记
开发工具:Spyder


文章目录

  • 集合set
    • 定义
    • 基本操作
      • 创建空集合和有默认值的集合
      • 添加及删除
      • 其他容器和集合的相互转换
      • 获取所有元素
    • 运算
      • 举个例子
    • 集合推导式

集合set

定义

由一系列不重复的不可变类型变量组成的可变映射容器。相当于只有键没有值的字典

基本操作

基本操作 方式
创建空集合 set()
创建具有默认值的集合 ①{1, 2, 3} ②set(可迭代对象)
添加元素 add
删除元素 remove

创建空集合和有默认值的集合

代码:

#创建空集合
s01 = set()
print(s01)
print("--------------")#创建有默认值的集合
s01 = {1, 2, 3, 4}
s02 = set("abcde")
print(s01)
print(s02)

结果:

添加及删除

代码:

s02 = set("abcde")#添加
s02.add("A")
s02.add("B")
print(s02)
print("--------------")#删除
s02.remove("d")
#若该元素不存在,则会报错
print(s02)

结果:

其他容器和集合的相互转换

代码:

#其他容器 --> 集合
s01 = set([1,3,5,7,9])#集合 --> 其他容器
l01 = list(s01)
t01 = tuple(s01)
print(s01)
print(l01)
print(t01)

结果:

获取所有元素

代码:

s02 = set("abcde")for item in s02:print(item)

结果:

运算

符号 运算
& 交集
| 并集
- 补集
^ 对称补集
< 子集
> 超级

举个例子

代码:


s01 = {2, 3, 4, 5}
s02 = {4, 5, 6, 7}#交集
s03 = s01 & s02 # {4, 5}
print(s03) #并集
s04 = s01 | s02 # {2, 3, 4, 5, 6, 7}
print(s04)#补集
s05 = s01 ^ s02 # {2, 3, 6, 7}
print(s05)s06 = s01 - s02 # {2, 3}
print(s06)
s07 = s02 - s01 # {6, 7}
print(s07)#子集和超集
sA = {1, 2, 3}
sB = {1, 2}
re01 = sA < sB #False 说明sA不是sB的子集
re02 = sA > sB #True 说明sA是sB的超集
print(re01)
print(re02)#相同和不同
s_1 = {1, 2, 3}
s_2 = {1, 2, 3}
re = s_1==s_2 #True 说明s_1与s_2相同
print(re)

结果:

集合推导式

  • 定义
    使用简易方法,将可迭代对象转换为集合。

  • 语法

{表达式 for 变量 in 可迭代对象}
{表达式 for 变量 in 可迭代对象 if 条件}
  • 例子

代码:

s01 = {item**2 for item in range(1, 9) if item % 2 == 0}
print(s01)

结果:

python基础(part9)--容器类型之集合相关推荐

  1. python基础(part5)--容器类型之字符串

    鄙人学习笔记 开发工具:Spyder 文章目录 容器类型 字符串str 定义 编码 相关函数 字符串的格式化 举个例子1 举个例子2 举个例子3 容器类型 字符串str 定义 由一系列字符组成的不可变 ...

  2. python基础(part7)--容器类型之列表

    鄙人学习笔记 开发工具:Spyder 文章目录 列表list 定义 基础操作 举个例子 列表VS字符串 拼接和拆分 浅拷贝VS深拷贝 列表推导式 列表list 定义 由一系列变量组成的可变序列容器 图 ...

  3. Python基础08-数据类型:集合set

    目录 集合的概念 集合的方法 集合可变吗? 集合的概念 先理解一些概念. 数据类型按照是否可变分为可变类型.不可变类型.按照访问方式可以分为顺序访问.映射访问. 如何区分可变类型.不可变类型?就看在内 ...

  4. python基础(part8)--容器类型之元组和字典

    鄙人学习笔记 开发工具:Spyder 文章目录 元组 定义 基本操作 创建空元祖和有默认值的元组 修改及获取 作用 字典 定义 基本操作 创建空字典和有初始值的字典 增加,修改,读取,删除 获取字典中 ...

  5. python基础(part6)--容器类型之通用操作

    鄙人学习笔记 开发工具:Spyder 文章目录 通用操作 数学运算符 举个例子 成员运算符 举个例子 索引 举个例子 切片slice 举个例子 内建函数 通用操作 数学运算符 运算符 含义 + 用于拼 ...

  6. Python基础-高级变量类型

    Python基础-高级变量类型 1.高级变量类型 """ 数值型:int float bool compex 非数值型:str list set dict tuple & ...

  7. python入门之容器类型数据的一系列操作之列表、字典、集合

    列表的操作 1.列表的拼接 (同元组) 2.列表的重复 (同元组) 3.列表的切片 (同元组) 语法 => 列表[::] 完整格式:[开始索引:结束索引:间隔值] (1)[开始索引:] 从开始索 ...

  8. Python基础入门:高效的集合操作

    Python中有两种可以遍历的容器类型. 序列类型:包含字符串.列表.元祖 映射(哈希)类型:包含字典.集合 序列类型是线性表,就像数组一样,是在内存中开辟一块连续空间,连续存储的,那么查找某个元素时 ...

  9. Python基础,基本类型(整型,浮点数等)数据结构(List,dic(Map),Set,Tuple),控制语句(if,for,while,continue or break):来自学习资料

    3.Python 基础 3.1.语法 Python的语法比较简单,采用缩进方式. i = -100 if i >= 0:print(i) else:print(-i) 3.2.基本类型 3.2. ...

最新文章

  1. 中科院微生物所王军课题组特别研究助理招聘
  2. hdu 1325poj 1308 并查集(未解决)(掌握率50%)
  3. 英语 四六级 学习网址
  4. 机器手六维坐标怎么定义_工业机器人十万个怎么办-不清楚机器人各坐标系含义怎么办?...
  5. 如何使用yum来下载RPM包而不进行安装
  6. 玩转mini2440开发板之【如何使用JLink下载烧录boot程序到NorFlash】
  7. 关于/etc/init.d/nfs脚本解读中的疑问解答
  8. 游戏开发之点和圆的关系,附上C++类结构(C++基础)
  9. iOS内存管理学习笔记二
  10. mysql执行SQL脚本
  11. 超级好用的高颜值终端工具---Tabby
  12. Web安全工具大汇聚
  13. nc系统显示不能连接到服务器,用友U8 用友登录时提示不能连接到服务器。
  14. python文件定位函数_C语言中文件定位函数总结
  15. web-h264流媒体验证方案
  16. 项目管理100问 | NO.6 如何为项目制定里程碑?
  17. html怎么电视连电脑,电脑怎么投屏到电视?图文讲解电脑投屏具体方法步骤
  18. 新浪微博桌面客户端2014 v3.0.5 官方正式版
  19. 微信小程序 帮你算月供
  20. 第十四届蓝桥杯三月真题刷题训练——第 11 天

热门文章

  1. 大话数据结构16:图
  2. Machine Learning之Python篇(二)
  3. Kubernetes应用部署模型解析(原理篇)
  4. 给新手程序员的一些建议
  5. BZOJ3498 : PA2009 Cakes
  6. TianyaDL_4thread天涯帖子下载4线程版
  7. 计算机及其配件和参数知识科普
  8. 方立勋_30天掌握JavaWeb_(JSP+JavaBean实现)简单计算器
  9. __int64 与long long 的区别
  10. kotlin实现流读取