为什么Python的标准库中没有排序的容器?

发布于 2021-01-29 18:29:06

是否有Python设计决策(PEP)阻止将排序后的容器添加到Python?

OrderedDict不是已排序的容器,因为它是按插入顺序排序的。)

关注者
0
被浏览
50
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    对于Guido而言,这是一个有意识的设计决定(他甚至不愿意添加collections模块)。他的目标是在选择应用程序的数据类型时保留“一种显而易见的方式”。

    基本概念是,如果用户足够复杂,以至于不能意识到内置类型不是解决其问题的正确解决方案,那么他们还可以找到合适的第三方库。

    鉴于list + sorting,list + heapq和list +
    bisect涵盖了许多本来会依赖于固有排序的数据结构的用例,并且存在像blist这样的包,因此没有很大的动力来增加该空间的复杂性,标准库。

    在某些方面,这类似于标准库中没有多维数组的事实,而是将该任务割让给了NumPy员工。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看