python集合是否可变总结

yipeiwu_com7年前Python基础

集合是一个无序的可变的序列。集合中的元素必须是可hash的,即不可变的数据类型。

空集合

a=set()

注意a={}创建的是一个空字典。

set —— 可变集合。集合中的元素可以动态的增加或删除。

frozenset —— 不可变集合。集合中的元素不可改变。

注:对于 并集, 交集, 差集 等的返回值,与最左边的操作数具有相同的类型。例如:s & t 取交集。s集合是一个set类型的集合,t集合是一个frozenset类型的集合,则返回的结果将是set类型的集合。

也可以用set()转化为集合

b=[1,2,3,4]

a=set(b)

a

{1,2,3,4}

还可以用{}来创建一个集合

a={1,2,3,4,1}

a

{1,2,3,4}

与字典一样,因为集合是无序的,所以当有重复元素时,只保留其中一个。

不可变集合就是一个无序的不可变的集合

用frozenset(seq)创建

a=frozenset([1,2,3,(1,2,4)])

a

frozenset({1,2,3,(1,2,4)})

元素也只能是可hash的

frozenset([1,2,3,[1,2,4]])

error

主要用来做字典的键。。与tuple的区别在于无序,元素不可重复,且元素只能是不可变类型。

描述:可以将其它的组合数据类型转化为不可变集合类型(或将可变的集合类型set转变为不可变的集合类型 frozenset),返回一个无重复元素且排序任意的不可变集合。

frozenset()函数

语法: frozenset() -> empty frozenset object 返回一个不可变空集合

frozenset(iterable) -> frozenset object 返回一个不可变新集合

iterable —— 要转换的组合数据类型。

相关文章

python如何通过实例方法名字调用方法

本文实例为大家分享了python通过实例方法名字调用方法的具体代码,供大家参考,具体内容如下 案例:        某项目中,...

python实现修改固定模式的字符串内容操作示例

本文实例讲述了python实现修改固定模式的字符串内容操作。分享给大家供大家参考,具体如下: 说明 字符串模式是开头可能有空格,之后可能存在多个小数点,然后后面跟着一个数字,数字可能是小...

对numpy中数组元素的统一赋值实例

Numpy中的数组整体处理赋值操作一直让我有点迷糊,很多时候理解的不深入。今天单独列写相关的知识点,进行总结一下。 先看两个代码片小例子: 例子1: In [2]: arr =np....

pygame游戏之旅 python和pygame安装教程

pygame游戏之旅 python和pygame安装教程

简介: Pygame是跨平台Python模块,专为电子游戏设计,包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚。 建立在SDL基础上...

使用Python的OpenCV模块识别滑动验证码的缺口(推荐)

使用Python的OpenCV模块识别滑动验证码的缺口(推荐)

最近终于找到一个好的方法,使用Python的OpenCV模块识别滑动验证码的缺口,可以将滑动验证码中的缺口识别出来了。   测试使用如下两张图片:   target....