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

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

创新互联主要从事成都网站制作、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务六盘水,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

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


文章标题:python不可变集合中能不能改变元素
URL地址:http://azwzsj.com/article/ghhpdo.html