300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > python中集合的元素可以是任意数据类型_详解Python集合数据类型

python中集合的元素可以是任意数据类型_详解Python集合数据类型

时间:2023-07-23 23:07:13

相关推荐

python中集合的元素可以是任意数据类型_详解Python集合数据类型

本篇介绍Python集合数据类型。集合不同于列表和元组类型,集合存储的元素是无序且不能重复的,同数学中的集合一样,集合可以执行集合的并、交、差运算。通过本篇的学习,可以达成如下目标。

● 掌握集合数据类型

● 在程序中使用集合数据类型

在数学概念中,集合是由一个或多个确定的元素构成的整体。具体来说是指具有某种特定性质、具体的或抽象的对象汇总成的集体,这些对象称为该集合的元素或成员。例如,在整数集合中,数值…、-1、0、1、2…是整数集合的元素。

在Python语言中,集合存储的元素无序且不能重复,因此可以做字典的键。集合有两种不同的类型,可变集合和不可变集合,可变集合可以添加或删除元素,但可变集合所存储的元素不能被哈希,因此不能用做字典的键;不可变集合不能添加或删除元素,但元素是可哈希的,可以做字典的键。

1、 集合的声明和赋值

集合必须用Python提供的工厂函数来声明,可变集合使用set函数,不可变集合使用frozenset函数。

例1:集合声明和赋值

例1输出结果如下图所示。

从上面的输出结果可以看出,集合会把传入的字符串拆分为单个字符作为集合的成员,当传入列表时,集合会把列表内的元素作为集合成员。从输出结果还可以看出,集合不允许有重复的元素,例中s1声明时传入了“Java”字符串,但集合成员只有{‘j’,’a’,’v’},重复的a被删除。

2、 集合的访问

集合存储的元素是无序且不重复的,因此不能像列表、元组一样通过索引访问集合存储的元素。对集合元素的访问可以使用成员操作符in或not in来判断某元素是否在集合中。

例2:用成员操作符访问集合元素

例2输出结果如下图所示。

可以使用for循环遍历集合的元素,在遍历过程中,元素的显示顺序可能和加入的元素顺序不一致。

例3:遍历集合

例3输出结果如下图所示。

3、 集合的更新

集合内置了add、update、remove方法用于集合元素的添加、更新及移除操作。另外也可以通过操作符“-=”从集合中删除子集合。集合更新操作只适用于通过set创建的可变集合。

add方法用于添加一个集合成员;remove方法用于删除一个集合成员;update用于从已存在的集合中添加一个或多个成员;操作符“-=”用于删除集合中的子集合。

例4:集合更新

例4输出结果如下图所示。

4、 集合的运算

Python语言的集合类型同数学集合类型一样,也有求集合的并集、交集、差集、对称差集运算。

集合的并集运算是把两个集合合并成一个新的集合,集合合并后重复的成员被删除。在Python语言中,使用符号‘|’或union函数可以执行集合的合并运算。

集合的交集运算是求两个集合的共有成员,两个集合执行交集运算后返回新的集合,该集合中的每个元素同时是两个集合中的成员。在Python语言中,使用符号‘&’或intersection函数可以执行集合的交集运算。

集合的差集运算是求A集合与B集合之间的差值,A集合与B集合执行差集运算后返回新的集合,该集合的元素,只属于集合A,而不属于集合B。在Python语言中,使用符号‘-’或difference函数可以执行集合的差集运算。

集合的对称差集运算是集合的异或运算,A集合与B集合执行对称差集运算后返回新的集合,该集合中的元素只能是属于A集合或B集合的成员,不能同时属于A和B集合。在Python语言中,使用符号‘^’或symmetric_difference函数可以执行集合的对称差集运算。

例5:集合运算

例5输出结果如下图所示。

5、 集合常用的内置方法

前面已介绍了一些有关集合操作的函数和内置方法。下面对一些常用的内置方法做个小结。

表格1 适用于所有集合的内置方法

表格 2 适用于可变集合的内置方法

6、 Python用于操作集合的函数

Python提供的set、frozenset、len函数可用于集合的声明、返回集合成员个数。

表格 3 Python用于操作集合的函数

课程小结

在Python语言中,集合存储的元素无序且不能重复。集合有两种不同的类型,可变集合和不可变集合,可变集合可以添加或删除元素;不可变集合不能被修改。集合必须用Python提供的工厂函数来声明,可变集合使用set函数,不可变集合使用frozenset函数。

集合不能像列表、元组一样通过索引访问集合存储的元素,对集合元素的访问只能使用成员操作符in或not in来判断某元素是否在集合中。集合内置了add、update、remove方法用于集合元素的添加、更新及移除操作。另外也可以通过操作符“-=”从集合中删除子集合。集合更新操作只适用于通过set创建的可变集合。

Python语言的集合类型同数学集合类型一样,也有求集合的并集、交集、差集、对称差集运算。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。