字典与集合
相比于列表和元组,字典的性能更优,特别是对于查找、添加和删除操作,字典都能在常数时间复杂度内完成。
集合和字典基本相同,唯一的区别,就是集合没有键和值的配对,是一系列无序的、唯一的元素组合。
Python 中字典和集合,无论是键还是值,都可以是混合类型。
字典访问可以直接索引键,如果不存在,就会抛出异常。
可以使用 get(key, default) 函数来进行索引。
如果键不存在,调用 get() 函数可以返回一个默认值。
集合并不支持索引操作,因为集合本质上是一个哈希表。
想要判断一个元素在不在字典或集合内,用 value in dict/set 来判断。
除了创建和访问,字典和集合也同样支持增加、删除、更新等操作。
集合的 pop() 操作是删除集合中最后一个元素,可是集合本身是无序的,你无法知道会删除哪个元素,因此这个操作得谨慎使用。
实际应用中,很多情况下需要对字典或集合进行排序,比如取出值最大的 50 对。
对于字典通常会根据键或值,进行升序或降序排序。
字典和集合通常运用在对元素的高效查找、去重等场景。