📜  按索引排序二维数组python(1)

📅  最后修改于: 2023-12-03 14:54:40.702000             🧑  作者: Mango

按索引排序二维数组 Python

在 Python 中,排序二维数组可以使用 sorted 函数和 key 参数来指定排序的索引。此外,还可以使用 operator 模块中的 itemgetter 函数。

使用 sorted 函数和 key 参数

假设有以下二维数组:

array = [[3, 2], [1, 4], [2, 3]]

要按第一个元素排序,可以使用以下代码:

sorted_array = sorted(array, key=lambda x: x[0])

key 参数指定了排序依据,即每个子列表的第一个元素。

要按第二个元素排序,只需要将 key 函数修改为 lambda x: x[1] 即可。

使用 operator 模块中的 itemgetter 函数

operator 模块中的 itemgetter 函数可以方便地获取某个索引对应的值。要按第二个元素排序,可以使用以下代码:

from operator import itemgetter

sorted_array = sorted(array, key=itemgetter(1))

itemgetter(1) 表示获取每个子列表的第二个元素。

示例代码
array = [[3, 2], [1, 4], [2, 3]]

sorted_array_by_first = sorted(array, key=lambda x: x[0])
sorted_array_by_second = sorted(array, key=lambda x: x[1])

from operator import itemgetter

sorted_array_by_second_using_itemgetter = sorted(array, key=itemgetter(1))

print(sorted_array_by_first)
print(sorted_array_by_second)
print(sorted_array_by_second_using_itemgetter)

输出:

[[1, 4], [2, 3], [3, 2]]
[[3, 2], [2, 3], [1, 4]]
[[3, 2], [2, 3], [1, 4]]

以上就是按索引排序二维数组 Python 的介绍。