python - 如何对 x-y 坐标列表进行排序

标签 python sorting

<分区>

我需要对 [x,y] 坐标列表进行排序,如下所示:

list = [[1,2],[0,2],[2,1],[1,1],[2,2],[2,0],[0,1],[1,0],[0,0]]

排序后我要寻找的模式是:

[x,y] 坐标应先按y 排序,然后按x 排序。新列表应如下所示:

list = [[0,0],[1,0],[2,0],[0,1],[1,1],[2,1],[0,2],[1,2],[2,2]]

我不知道该怎么做,希望得到一些帮助。

最佳答案

使用sorted带 key :

>>> my_list = [[1,2],[0,2],[2,1],[1,1],[2,2],[2,0],[0,1],[1,0],[0,0]]
>>> sorted(my_list , key=lambda k: [k[1], k[0]])
[[0, 0], [1, 0], [2, 0], [0, 1], [1, 1], [2, 1], [0, 2], [1, 2], [2, 2]]

它将首先对 y 值进行排序,如果相等,则将对 x 值进行排序。

我还建议不要将 list 用作变量,因为它是 built-in data structure .

关于python - 如何对 x-y 坐标列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37111798/

相关文章:

java - 对整数数组进行排序,同时它具有用于记分板的字符串数组

Python:生成所有长度为 N 的唯一有序列表

使用 Thrust CUDA 对对象进行排序

Python Sklearn.Model_Selection 给出无法导入梳子的错误

javascript - 如何处理 webelement is - not attribute id(!) in javascript from selenium-python?

python - 区分文件名和文件路径

algorithm - 在 O(nlogn) 的两个集合中找到匹配对

arrays - 根据值对 HoHoA 进行排序和比较

python - 如何绘制混合条形图和折线图并获取 x 轴作为年份

python - matplotlib 连接到主页/后退/前进按钮事件