在上一节的合集中,我们了解了Python字典增删改及推导式的相关知识,本节我们将进一步了解一下Python集合的相关知识。
Python中的集合同数学中的集合概念类似,也适用于保存不重复元素的,他有可变集合和不可变集合两种。在形式上,集合所有元素都放在一对{}中,两个相邻元素间使用,分隔,集合最好的应用就是去掉重复元素。
在Python中提供了两种创建集合的方法:一种是直接使用{}创建,另外一种是通过set()函数将列表,元组等可迭代对象转换为集合。
1. 直接使用{}创建集合
在Python中,创建set集合也可以像列表,元组合字典一样,直接将集合赋值给变量从而实现创建集合,即直接使用{}创建,语法格式如下:
setname={element1,element2,element3,...,element n}
参数说明:
setname:表示集合的名称,可以是任何符合Python命名规则的标识符。
element1,element2,element3,...,element n:表示集合中的元素,个数没有限制,只要是Python支持的数据类型就可以
注:在创建集合时,如果输入了重复元素,Python会自动只保留一个。
例:
set1={'水瓶座','射手座','双鱼座','双子座'}
set2={3,1,4,1,5,9,2,6}
set3={'Python',28,('人生苦短','我用Python')}
以上三段代码将创建下面3个集合:
{'水瓶座','射手座','双鱼座','双子座'}
{1,2,3,4,5,6,9}
{'Python',28,('人生苦短','我用Python')}
注:由于Python中的set集合是无序的,所以每次输出时元素的排列顺序可能都不相同。
2.使用set()函数创建
在Python中,可以使用set()函数将列表,元组等其他可迭代对象转换为集合。
set()函数的语法格式如下:
setname=set(iteration)
参数说明:表示集合名称
iteration:表示要转换为集合的可迭代对象,可以是列表,元组,range对象等,也可以是字符串。如果是字符串,返回的集合将是包含全部不重复字符的集合。
例:
set1=set(“命运给予我们的不是失望之酒,而是机会之杯。”)
set2=([1.414,1.732,3.14159,2.236])
set3=set(('人生苦短','我用Python'))
以上代码将会创建以下3个集合:
{‘不’,'的',‘望’,'是','给',',','我','。','酒','会','杯','运','们','予','而','失','机','命','之'}
{1.414,1.732,3.14159,2.236}
{'人生苦短','我用Python'}
从上面的例子创建的集合结果中可以看出,在创建集合时,如果出现了重复元素,那么将只保留一个,如在第一个集合中的'是'和‘之’都只保留一个。
注:在创建空集合时,只能使用set()实现,而不能使用一对{}实现,这是因为在Python中。直接使用一对{}表示创建一个空字典。在Python中,创建集合时推荐采用Set()函数实现。
花絮:
本期的Python 集合就分享到这里,下期我们将继续分享Python集合的添加删除等相关知识