Dotcpp  >  编程教程  >  Python核心语法  >  Python集合类型介绍

Python集合类型介绍

点击打开在线编译器,边学边练

我们在学习数学的时候学过集合这个概念,在Python中同样存在一种名叫集合的数据类型,它也是用来保存不重复的元素,简单的说,集合就是包含了一些唯一存在的元素。

元素有以下几个特性:

1) 无序性,集合中保存的元素是没有顺序的。

2) 多样性,集合中可以保存多种数据类型的元素。

3) 唯一性,集合中的元素都是唯一存在的,不会重复出现。

1. 创建集合

在创建集合的时候有2种方式,一种是直接使用集合的特征符号‘{}’来创建,一种是使用set()函数强制类型转换来创建。

       1) 直接创建

首先我们要知道集合和字典的区别,集合是由‘{}’括起来的结构,每个元素之间用‘,’隔开,

集合和字典都是用大括号括起来,但是集合之间不使用冒号。

集合的结构为:

my_set = {元素1,元素2,元素3}

my_set为要创建的集合名,括号内的为集合中的元素。

>>> my_set = {1,2,3,4,5,6}
>>> my_set
{1, 2, 3, 4, 5, 6}

       2) 使用set()函数强制类型转换创建

使用set()可以直接创建一个空集合,也可以将其他类型的结构直接转换为集合。

my_set = set(iteration)

my_set为要创建的集合名,set()函数为强制类型转换,iteration是一个可迭代对象,它可以是元组、列表或range对象。

>>> m = set('12345')#强制转换字符串
>>> n = set([1,2,3,4,5])#强制转换列表
>>> k = set(range(1,6))#强制转换range()对象
>>> i = set((1,2,3,4,5))#强制转换元组
>>> m
{'4', '3', '5', '1', '2'}
>>> n
{1, 2, 3, 4, 5}
>>> k
{1, 2, 3, 4, 5}
>>> i
{1, 2, 3, 4, 5}

2. 清空集合

在学习增添和删除元素之前我们可以回忆一下del()方法,del()方法可以直接删除整个集合,语法格式为:

del my_set

3. 添加元素

集合是可变序列,因此我们可以对其中的元素进行增删操作。

添加元素使用add()方法,语法格式如下:

my_set.add(x)

my_set为集合名,x为要插入的元素。

>>> my_set#插入前
{1, 2, 3, 4, 5, 6}
>>> my_set.add('插入一个新元素x')
>>> my_set#插入后
{1, 2, 3, 4, 5, 6, '插入一个新元素x'}

4. 删除元素

删除元素可以使用集合的pop()方法或者remove()方法去删除一个元素,也可以使用clear()方法去清空集合。

需要注意的是remove()方法是移除指定元素,而pop()方法是直接删除集合中的第一个元素并输出,clear()方法直接清空了集合中的所有元素。

看下面实例:

>>> my_set{1, 2, 3, 4, 5, 6, '插入一个新元素x'}
>>> my_set.pop()#会删除并输出第一个元素1
>>> my_set{2, 3, 4, 5, 6, '插入一个新元素x'}
>>> my_set.remove(6)#直接指定删除6
>>> my_set{2, 3, 4, 5, '插入一个新元素x'}
>>> my_set.clear()#清空集合
>>> my_set#打印结果显示为一个空集合
set()

集合的使用方法有很多,我们在做题的过程中,如果要删除列表中的重复元素,采用set()方法强制类型转换可以很方便的删除多余的元素,下一章我们学习一下集合的交集、并集和差集。



本文固定URL:https://www.dotcpp.com/course/249

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Python教程
第一章 Python入门
第二章 Python基础语法
第三章 Python入门语法
第四章 Python核心语法
第五章 Python函数
第六章 Python面向对象编程
第七章 Python模块
第八章 Python异常处理和程序调试
第九章 Python文件及目录操作
第十章 PythonGUI编程
第十一章 Python进程和线程
第十二章 Python数据库管理
第十三章 Python算法
第十四章 Python爬虫
第十五章 Python实战项目
第十六章 后记
Dotcpp在线编译      (登录可减少运行等待时间)