python 二维数组排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 二维数组排序相关的知识,希望对你有一定的参考价值。

在Python中,可以使用sorted()函数对二维数组进行排序。以下是一个示例代码:

arr = [[3, 2, 1], [6, 5, 4], [9, 8, 7]]

        sorted_arr = [sorted(sub_arr) for sub_arr in arr]

        print(sorted_arr)

在上面的代码中,我们首先创建一个3x3的二维数组arr。然后,我们使用列表推导式和sorted()函数对每个子列表进行排序,得到一个新的二维数组sorted_arr。最后,我们使用print()函数将sorted_arr打印到控制台上。请注意,上面的代码中,我们使用了sorted()函数的默认参数,即按照元素的大小进行升序排序。如果需要进行降序排序,可以将sorted()函数的reverse参数设置为True。

参考技术A python有自带的sorted函数。
sorted 语法:

sorted(iterable, key=None, reverse=False)
iterable -- 可迭代对象。

key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。

reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

比如,对二维数组按照第一个元素排序:arr = list(sorted(arr, key=lambda x: x[0]))

python---二维数组的查找

"""
在一个二维数组中(每个一维数组的长度相同),
每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。
"""


# array = [[1, 2, 3], [4, 5, 6]]

class Solution:

    def Find(self, target, array):
        if not array:
            return False
        for row in array:
            for item in row:
                if item == target:
                    return True
        else:
            return False

    # def Find(self, target, array):
    #     # 二维数组的行数
    #     row = len(array)
    #     # 二维数组的列数
    #     col = len(array[0])
    #     for i in range(row):
    #         for j in range(col):
    #             if array[i][j] == target:
    #                 return True
    #     else:
    #         return False

以上是关于python 二维数组排序的主要内容,如果未能解决你的问题,请参考以下文章

Python numpy 保留已排序二维数组的索引列表

如何在python中对存储xy坐标的二维数组进行排序?

python大神你好,请问二维列表参照一维列表排序的问题。

PHP二维数组按照指定的顺序排序

sort int[][] 二维数组排序

二维数组中的查找(C++和Python实现)