小编给大家分享一下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中集合是不是可变的有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。