为什么Python的dict.keys()返回一个列表而不是一个集合?
我会希望Python的keys方法返回一个集合,而不是一个列表。 因为它最类似于hashmap的键所能提供的保证。 具体而言,它们是独一无二的,不像一套一样sorting。 但是,这个方法返回一个列表:
>>> d = {} >>> d.keys().__class__ <type 'list'>
这只是在Python API中的一个错误,还是有一些其他的原因,我错过了?
原因之一是dict.keys()
早于集合引入到语言中。
注意在Python 3中dict.keys()
的返回types已经改变了:函数现在返回一个视图而不是一个列表。