您的“关注”和“点赞”,是信任,是承认,是支持,是动力......python
如意见相佐,可留言。
本人必将不遗余力试图作到准确和全面,终其一辈子进行修改补充更新。
安全
目前有两种内置集合类型,set
(可参见博文《Python 集合数据类型之一:set》 ) 和 frozenset
。微信
set
类型:是可变的,其内容可使用 add()
和 remove()
这样的方法来改变。
因为是可变类型,它没有哈希值,且不能被用做字典的键
或其余集合的元素
。.net
frozenset
类型:是不可变而且为 hashable
,其内容在被建立后不能再改变;
所以它能够被用做字典的键
或其余集合的元素
。code
set
集合中全部能改变集合自己的方法,好比 remove()、discard()、add()
等,frozenset
都不支持;set
集合中不改变集合自己的方法,fronzenset
都支持。对象
fronzenset
替代 set
,这样更加安全。fronzenset
替代 set
。例如:字典(dict)(请参见博文《Python 映射数据类型(字典数据类型 dict )详解》)的键(key)就要求是不可变对象。