Python——集合是一个非常之牛逼的数据比较方式

简介:

    什么是集合?对似懂非懂或者被集合搞晕了的同学可以来看一下。
    首先不想说太多概念性的东西,免得又晕了!

    请看下面我写的例子,看完之后自然就知道啥是集合以及如何去应用它

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#变量a是一个集合类型
=  set ()
print ( type (a))
 
#定义一个列表,并存入很多重复的数字
dt  =  [ 12 , 9 , 2 , 8 , 4 , 9 , 2 , 7 , 4 , 5 , 6 , 11 , 5 , 7 , 5 , 7 , 9 , 8 , 7 , 2 ]
for  in  dt:  #遍历列表
     a.add(i)  #将列表中的每一个元素添加进集合
 
#打印集合,发现,自动去掉重复的数字了
print (a)
 
#5存在于集合中吗?
print ( 5  in  a)
 
#遍历集合
for  item  in  a:
     print (item)
 
#将集合转化成列表
set_list  =  list (a)
print (set_list)
print ( type (set_list))


那么,集合还涉及到下面几个牛逼的玩意:

并集:
    它将两个集合作为参数,并返回一个包含全部存在于两个集合中任意一个的元素的新集合,用union()方法, 操作符是:"|"
交集:
    它接收第2个集合为参数,返回的是仅包含同时存在于两个集合的那些元素,intersection方法实现,操作符是:"&"
差集:
    它告诉我们哪些是剩下的元素,它是一个存储于或是存在于这个集合或是另一个集合,但不是同时存在于两个集合的对象的集合
    symmetric_difference方法实现,操作符是:"-"


继续看例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
=  { 1 , 2 , 3 , 4 , 5 }
=  { 6 , 2 , 3 , 7 }
 
#求a和b的并集,将两组数据中共同存在的数字去除掉后,生成一个不存在重复数字的新集合
print (a.union(b))
 
#求a和b的交集,将两组数据中共有的数字提取出来,并生成一个新的集合,让我们知道这两组数据中哪些数字都存在于两组数据里
print (a.intersection(b))
 
#求a和b的差集,将两组数据中所没有的数字提取出来后,生成一个新的集合
print (a.symmetric_difference(b))
 
#注意:他们的结果取决于谁是调用者,谁是参数,上面的3条例子中,a集合是调用者,b集合是参数
 
#a集合中的所有数字都存在于b集合的话,则返回true, a是调用者,b是参数
print (a.issubset(b))
 
#b集合作为参数,b集合中的所有元素都存在于a集合中的话,返回true
print (a.issuperset(b))
 
#想要知道全部只存在于a集合而不存在于b集合的元素
print (a.difference(b))  #结果是1,4,5
#反之
print (b.difference(a))  #结果是6和7


总结:
    通过测试说明,集合可以用来操作另一个集合,集合不仅仅只是一个容器
    那么,应用场景一般有如下:
        1、对两处不同的数据,如果要快速的结合起来去做分析,那么请用集合
        2、那么快速的结合起来的目的一般是干嘛呢?,比如想知道两处数据中哪些是重复的,哪些是不同的
        
因此:
    集合是一个非常之牛逼的数据比较方式


本文转自 TtrToby 51CTO博客,原文链接:http://blog.51cto.com/freshair/2064765


相关文章
|
4天前
|
数据采集 存储 API
网络爬虫与数据采集:使用Python自动化获取网页数据
【4月更文挑战第12天】本文介绍了Python网络爬虫的基础知识,包括网络爬虫概念(请求网页、解析、存储数据和处理异常)和Python常用的爬虫库requests(发送HTTP请求)与BeautifulSoup(解析HTML)。通过基本流程示例展示了如何导入库、发送请求、解析网页、提取数据、存储数据及处理异常。还提到了Python爬虫的实际应用,如获取新闻数据和商品信息。
|
5天前
|
Python
python集合的创建案例分享
在Python中,通过大括号或`set()`函数可创建集合。示例包括:使用大括号 `{}` 创建带元素的集合,如 `{1, 2, 3, 4, 5}`;使用 `set()` 函数从列表转换为集合,例如 `set([1, 2, 3, 4, 5])`,以及创建空集合 `set()`。当元素有重复时,集合会自动去重,如 `set([1, 2, 2, 3, 4, 4, 5])`。但尝试将不可哈希元素(如列表、字典)放入集合会引发 `TypeError`。
12 1
|
1天前
|
Python
python学习8-集合
python学习8-集合
|
1天前
|
机器学习/深度学习 数据采集 数据挖掘
Python 的科学计算和数据分析: 解释什么是数据规整(Data Wrangling)?
数据规整是将原始数据转化为适合分析和建模的格式的关键步骤,涉及缺失值处理(删除、填充、插值)、异常值检测与处理、数据类型转换、重采样、数据合并、特征选择和特征变换等任务。这些预处理步骤确保数据质量和准确性,为后续的数据分析和机器学习模型构建奠定基础。
12 4
|
3天前
|
存储 安全 数据处理
python如何将数据写到数组里
【4月更文挑战第12天】
|
14天前
|
人工智能 监控 数据可视化
【Python】Python商业公司贸易业务数据分析可视化(数据+源码)【独一无二】
【Python】Python商业公司贸易业务数据分析可视化(数据+源码)【独一无二】
|
18天前
|
机器学习/深度学习 人工智能 数据可视化
基于Python的数据可视化技术在大数据分析中的应用
传统的大数据分析往往注重数据处理和计算,然而数据可视化作为一种重要的技术手段,在大数据分析中扮演着至关重要的角色。本文将介绍如何利用Python语言中丰富的数据可视化工具,结合大数据分析,实现更直观、高效的数据展示与分析。
|
22天前
|
数据可视化 数据挖掘 Python
Python中的数据可视化工具Matplotlib简介与实践
在本文中,我们将介绍Python中常用的数据可视化工具Matplotlib,包括其基本概念、常用功能以及实际应用。通过学习Matplotlib,读者可以更好地理解和运用数据可视化技术,提升数据分析与展示的能力。
|
25天前
|
Python
掌握Python中的集合推导式
掌握Python中的集合推导式
|
25天前
|
Python
探索Python集合推导式的进阶应用
探索Python集合推导式的进阶应用