数组排序 python
时间: 2023-08-25 14:15:57 浏览: 93
在Python中,可以使用多种方法对数组进行排序。其中一种方法是使用内置的sorted()函数。例如,对于数组arr,可以使用sorted()函数将其排序并将结果赋给sorted_arr变量,然后进行打印输出。代码如下所示:
```python
arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
sorted_arr = sorted(arr)
print(sorted_arr)
```
输出结果为: [1。
另一种方法是使用数组对象的sort()方法。对于数组arr,可以使用arr.sort()方法对其进行原地排序,并直接打印输出。代码如下所示:
```python
arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
arr.sort()
print(arr)
```
输出结果与前面相同: [2。
另外,如果使用NumPy库,可以使用np.sort()函数对数组进行排序。对于NumPy数组arr,可以使用np.sort(arr)函数将其排序,并将结果赋给sorted_arr变量,然后进行打印输出。代码如下所示:
```python
import numpy as np
arr = np.array([3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5])
sorted_arr = np.sort(arr)
print(sorted_arr)
```
输出结果为: [3。
此外,还可以使用heapq库中的heapify()和heappop()函数进行堆排序。对于数组arr,可以使用heapq.heapify(arr)函数将其转换为堆,并使用heapq.heappop(arr)函数进行排序,将排序后的元素逐个添加到sorted_arr列表中,然后进行打印输出。代码如下所示:
```python
import heapq
arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
heapq.heapify(arr)
sorted_arr = []
while arr:
sorted_arr.append(heapq.heappop(arr))
print(sorted_arr)
```
输出结果为: [4。
如果要对二维数组进行排序,可以使用NumPy库中的np.sort()函数。例如,对于二维数组arr,可以使用np.sort(arr)函数将其按行进行排序,并进行打印输出。代码如下所示:
```python
import numpy as np
arr = np.array([[3, 12, 4], [5, 10, 1]])
print(np.sort(arr))
```
输出结果为:
```
[[ 3 4 12]
[ 1 5 10]]
```
另外,如果将二维数组视为一维数组进行排序,可以使用np.sort(arr1)函数。例如,对于一维数组arr1,可以使用np.sort(arr1)函数将其进行排序,并进行打印输出。代码如下所示:
```python
import numpy as np
arr1 = np.array([[3, 12, 4, 5, 10, 1]])
print(np.sort(arr1))
```
输出结果为:
```
[[ 1 3 4 5 10 12]]
```
[5。
综上所述,可以使用Python内置函数sorted()、数组对象的sort()方法、NumPy库的np.sort()函数以及heapq库中的heapify()和heappop()函数对数组进行排序。具体使用哪种方法取决于具体需求和使用场景。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [Python NumPy 数组 排序](https://blog.csdn.net/weixin_64338372/article/details/128656863)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* [python数组排序的方法及常用代码](https://blog.csdn.net/qq_42751978/article/details/129831576)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文