Python 字典——为什么 keys()、values() 返回列表而不是集合?

标签 python list dictionary unordered

<分区>

来自讨论here我知道一般来说字典是没有顺序的,至少不是以可靠的方式。那么为什么字典方法 keys()、values()、items() 返回有序列表而不是例如无序集?这只是为了方便还是有一些潜在的推理?

最佳答案

它们不返回列表或集合;他们返回意见。只要值是可散列的,键 View 就是集合式的,项目 View 也是集合式的,但值 View 不能是集合式的,因为可能存在重复值。

在 Python 3 之前,它们返回列表,但这些方法早于集合的引入。 Sets were introduced in Python 2.4 ,而 keys/values/items 至少从 1.4 开始就存在了,并且可能在 1.0 之前。

关于Python 字典——为什么 keys()、values() 返回列表而不是集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51790555/

相关文章:

python - 断言数组几乎等于零

python - Django - 尽管在 urls.py 中但未找到播放器 URL

python - 保存/加载 sympy lambdifed 表达式

python - 为列表预留空间

swift - Alamofire 的格式化字典

python - 类型错误 : unhashable type: 'dict' Django

Python:创建一个根据条件变化的递增变量

android - 如何在同一 Activity 中更新 listView?

Python 列表交集效率 : generator or filter()?

python - Ruby 中的哈希值并将 python 转换为 ruby