Urv*_*esh 1 python sorting arraylist
我有两个清单。第一个列表包含 X 坐标值,第二个列表包含 Y 坐标值。使用这两个列表,我想创建一个按第一个元素排序的元组。
X coordinate = [2, 3, 4, 4, 3, 2, 1, 0, 0, 1, 1, 1, 1, 2, 2, 2]
Y coordinate = [3, 3, 3, 4, 4, 4, 4, 4, 3, 3, 2, 1, 0, 0, 1, 2]
Run Code Online (Sandbox Code Playgroud)
我希望我的输出是这样的:
[(0, 3), (0, 4), (1, 0), (1, 1), (1, 2), (1, 3), (1, 4), (2, 0), (2, 1), (2, 2), (2, 3), (2, 4), (3, 3), (3, 4), (4, 3), (4, 4)]
Run Code Online (Sandbox Code Playgroud)
为了实现这个结果,我编写了下面的代码并得到了下面提到的输出。
merged_list = list(tuple(zip(X3_coordinate, Y3_coordinate)))
merged_list.sort(key=lambda x: x[0])
merged_list
Run Code Online (Sandbox Code Playgroud)
输出:
[(0, 4), (0, 3), (1, 4), (1, 3), (1, 2), (1, 1), (1, 0), (2, 3), (2, 4), (2, 0), (2, 1), (2, 2), (3, 3), (3, 4), (4, 3), (4, 4)]
Run Code Online (Sandbox Code Playgroud)
请让我知道我做错了什么并给出一些代码建议。
list(tuple())仅仅做list()sorted同时生成列表和排序X_coordinate = [2, 3, 4, 4, 3, 2, 1, 0, 0, 1, 1, 1, 1, 2, 2, 2]
Y_coordinate = [3, 3, 3, 4, 4, 4, 4, 4, 3, 3, 2, 1, 0, 0, 1, 2]
merged_list = sorted(zip(X_coordinate, Y_coordinate))
print(merged_list)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
85 次 |
| 最近记录: |