首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python基础知识之集合:你必须掌握的知识

1  认识什么是集合

你是否还记得初中是数学课上学的集合概念呢?对,集合中不能存在重复的数据。在两个集合进行交集运算,并集运算,差集运算时,结合是不是没有重复的数据。因此,集合通常用于对数据进行去重处理。

你还记得集合中的元素有3个特性吗?来,我们重新回顾一下。

确定性:给定一个集合,任何对象是不是这个集合的元素是确定的了。

互异性:集合中的元素一定是不同的。

无序性:集合中的元素没有固定的顺序。

编程语言中的集合概念和刚才回顾的数学上的集合概念非常类似,我们来认识一下Python集合和基本使用。

2 Python集合定义

Python集合是一个无序且没有重复元素的序列,即集合中的元素都是唯一且互不相同。从形式上和内容上来详细讲解:

形式上来说,Python集合是将所有的元素放在{}中,类似Python字典,且相邻元素之间用“,”分割,示例如图1所示。

图1 集合定义示意图

其中“元素1~n”表示集合中的元素。

内容上来讲,集合中,智能存储不可变的数据类型,包括整型、浮点型、字符串、元组,不能存储列表,字典,集合可变数据类型。

那什么是不可变数据类型和可变数据类型?

答案:数据类型可不可变,是值能不能改变吗?可不是这样的。

可不可变指内存一旦定义好是否可以再次修改,当你修改这个类型的数据时,地址还是原来的内存不变。我们想你应该明白了,不可变数据类型:是这个类型的内存地址所对应的数据是不可以修改的的,当修改这个数据时,会开辟一个新的空间,所以内存地址是会发生改变的。

注意:

当Python集合中数据重复时,会自动的去重。

Python集合支持索引,切片等其他序列类的操作。

我们讲完了Python的定义,现在来正式进入Python集合的创建,Python定义集合提供了两种方式:{}创建 和 set()创建集合。

注意:定义空集合不能使用{} ,因为{ } 是创建空字典的方法,定义空集合可以使用set()。

2.1 {}创建集合

在 Python 中,创建 set 集合可以像列表、元素和字典一样,直接将集合赋值给变量,从而实现创建集合的目的。具体使用,看看下面这个例子,如图2所示。

图2 使用{}创建集合

在图2中,创建了一个集合并赋值给变量a,如果你仔细观察,会发现集合中农有两个相同元素“1”,但是输出的集合结果中只有一个元素“1”。因为Python编译器在处理集合类型时,会自动的将重复去掉。

2.2 set()创建集合

Python内置函数:set(),其功能是将字符串、元组、列表、range对象等可迭代对象转换成集合。具体用法,我们通过下面例子来详细说明,如图3所示

图3 set()函数创建字符串

set()函数将字符串类型转为集合时,会将字符串中的各字符分离成单个字符。无论字符串、元组和列表的转换为集合都会进行去重操作。去重重复数据是集合的重点工作。

2.3 集合创建实战训练

我们已经学完了集合的概念和定义,知道了如何创建一个集合,下面我们来动手实践一下,巩固一下学习的知识。快来回答一下问题:

如何通过{}和set()函数2创建一个集合呢?

空集合如何创建?

集合有去重功能吗?

回答以上三个问题,具体答案如下图4所示:

图4 习题答案

下次我们学习集合的交集,并集,差集等操作如何通过Python实现,感谢大家的支持与关注!!。

#Python基础知识#

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230209A0991M00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券