数据结构之set类

set类

set 是集合类。这个类很特别,它是唯一坚决追求“特立独行”的数据类型。在这里,你没办法找到两个一样的值,即使强硬赋予,它也会强硬剔除,也就是去重,一个非常实用的技能,这也是 set 类存在的最大意义。

set 类还是无序的,不像列表和元组那般可以下标指定,同时,set 类的元素需要是不可变类型,就和字典的键一样。

1.set的賦値

在这里插入图片描述

输出结果

在这里插入图片描述
我们发现,两个0不见了一个,确实去重了,而且输出结果是无序的。但还有一个问题:False 怎么也不见了?它去哪了?

注意

之前讲过,True1,Flase0,在set类中也是如此。当集合里的元素同时存在1和True时会去重;同时存在0和False时也会去重。例如:
在这里插入图片描述

输出结果

在这里插入图片描述

2. Python中set的知识点

由于 set 类与dict 类一样也使用大括号作为标识符,所以当我们创建一个空集合时必须用 set()而不是{},因为{}用于创建一个空字典。
在这里插入图片描述

输出结果

在这里插入图片描述

注意

update()的参数必须为元组类型,否则会变成一个个字母。

set 的关系运算

这里还有必要强调一下 set 的关系运算—交、并、差、补。
假设现在某地出现了严重流感,政府需要统计接触过流感患者的人(contacted_test)和去过流感重灾区的人(visited_test)的各种组合数据:
在这里插入图片描述

输出结果

在这里插入图片描述

我们发现,多元组相加去重之后,也能实现并集的功能,例如:

在这里插入图片描述
输出结果
在这里插入图片描述

相关推荐

  1. 数据结构Set和Map

    2024-01-21 01:18:03       34 阅读
  2. 数据结构】Map和Set

    2024-01-21 01:18:03       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-21 01:18:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-21 01:18:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-21 01:18:03       87 阅读
  4. Python语言-面向对象

    2024-01-21 01:18:03       96 阅读

热门阅读

  1. Springboot之策略模式

    2024-01-21 01:18:03       59 阅读
  2. 第四讲_ArkTS装饰器(一)

    2024-01-21 01:18:03       66 阅读
  3. WebSocket

    WebSocket

    2024-01-21 01:18:03      52 阅读
  4. 铺设道路——贪心

    2024-01-21 01:18:03       65 阅读
  5. 算法训练营Day37(贪心6)

    2024-01-21 01:18:03       71 阅读