
上QQ阅读APP看书,第一时间看更新
2.6.1 集合及其创建
集合(set)和数学中的集合概念一样,是一组无序的不同元素的集合。它有可变集合(set())和不可变集合(frozenset())两种。
从形式上看,和字典类似,集合会将所有元素放在一对大括号“{}”中,相邻元素之间用“,”分隔,如下所示:

其中,elementn表示集合中的元素,个数没有限制。
从内容上看,同一集合中,只能存储不可变的数据类型,包括整型、浮点型、字符串、元组,无法存储列表、字典、集合这些可变的数据类型,否则Python解释器会给出TypeError错误。
Python提供了两种创建集合的方法,分别是使用“{}”创建和使用set()函数将列表、元组等类型数据转换为集合。
1.使用“{}”创建
在Python中,创建集合可以像列表、元素和字典一样,直接将集合赋值给变量,从而实现创建集合的目的,其语法格式如下:

其中,setname表示集合的名称,起名时既要符合Python命名规范,也要避免与Python内置函数重名。
【例2-59】 用“{}”创建集合。

运算结果:

2.set()函数创建集合
set()函数为Python的内置函数,其功能是将字符串、列表、元组、range对象等可迭代对象转换成集合。该函数的语法格式如下:

其中,iteration表示字符串、列表、元组、range对象等数据。
【例2-60】 用set()函数创建集合。

运算结果:

本例运行第二次后,发现集合的排序又发生变化了,这就验证了集合无序的特点。
需要注意的是,如果要创建空集合,只能使用set()函数实现。因为直接使用一对“{}”,Python解释器会将其视为一个空字典。