frozenset凍結集合函式

酷酷的伊萊文發表於2020-08-31

1.描述

frozenset()返回一個凍結的集合,凍結後不能新增、刪除和修改。 set()無序且不重複,是可以變的,有add、remove。擴充套件:刪除重複資料,還可以計算交集、差集、並集等

2.函式用法

frozenset([iterable])
iterable -- 可迭代物件,如:列表、字典、元組、字串

3.返回值

返回新的frozenset物件,如果不提供任何引數,預設會生成空集合。

4.例項

''' frozenset '''
num = frozenset(range(10))    # 建立不可變集合
print(num)    # frozenset({0, 1, 2, 3, 4, 5, 6, 7, 8, 9})

sitename = frozenset('pythonab')    # 建立不可變集合, 注意:順序不是按照引數的順序
print(sitename)    # frozenset({'a', 'b', 'h', 'p', 't', 'y', 'n', 'o'})

''' set '''
sitename1 =  set('pythonab')    # 可變集合
print(sitename1)    # {'a', 'b', 'h', 'p', 't', 'y', 'n', 'o'}

# set中向集合中新增
sitename1.add('.com')
print(sitename1)    # {'.com', 'a', 'b', 'h', 'p', 't', 'y', 'n', 'o'}

# frozenset中向集合中新增成員
sitename.add('.com')    #向不可變集合中新增成員,會報錯
'''
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'frozenset' object has no attribute 'add'
'''

相關文章