温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python不可变集合中能不能改变元素

发布时间:2020-12-08 14:49:55 来源:亿速云 阅读:272 作者:小新 栏目:编程语言

这篇文章将为大家详细讲解有关python不可变集合中能不能改变元素,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

frozenset是不可变的,其内容在被创建后不能再改变,不像set集合,可以增加删除集合中的元素。因此可以被用作字典的键或其他集合的元素。

1. 传入一个可迭代对象,生成一个新的不可变集合

>>> a = frozenset(range(10))
>>> a
frozenset({0, 1, 2, 3, 4, 5, 6, 7, 8, 9})
>>> b = frozenset('I am a Pythoner')
>>> b
frozenset({'y', 'I', ' ', 'r', 't', 'm', 'h', 'o', 'a', 'e', 'n', 'P'})

2. 不传入参数时,生成的空的不可变集合。

>>> c = frozenset()
>>> c
frozenset()

集合的元素必须为hashable。要表示由集合对象构成的集合,所有的内层集合必须为frozenset对象。

>>> f = frozenset()
>>> f
frozenset([])
>>> f = frozenset('asdf')
>>> f
frozenset(['a', 's', 'd', 'f'])
>>> f = frozenset([1,2,3,4])
>>> f
frozenset([1, 2, 3, 4])
>>> f = frozenset((1,2,3,4))
>>> f
frozenset([1, 2, 3, 4])
>>> f = frozenset({1:2, 'a':2, 'c':3})
>>> f
frozenset(['a', 1, 'c'])

如果试图改变不可变集合中的元素,就会报AttributeError错误。

不可变集合,除了内容不能更改外,其他功能及操作跟可变集合set一样。

关于python不可变集合中能不能改变元素就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI