为什么array
班级没有.sort()
?我不知道如何直接对数组进行排序。
类array.array
是一个打包列表,看起来像一个C数组。
我想使用它,因为在我的情况下只需要数字,但我需要能够对它进行排序。有没有办法有效地做到这一点?
答案 0 :(得分:0)
我看不到为什么缺少这种理由,这确实与Python的内置电池理念背道而驰。带有key
参数的排序函数对排序指向其他内容的索引数组确实很有帮助。
要对数组a
进行排序,您当然可以:
a = array.array("L", sorted(a))
,但是不会适当放置,并且会花费相当多的内存和运行时间,将数组转换为列表然后再返回数组。
答案 1 :(得分:-5)
列表是一种数据结构,具有易于执行某些操作的特性。数组是一个非常好理解的标准数据结构,并未针对排序进行优化。数组基本上是存储数据集产品的标准方法。从未有过对它进行分类的概念。