python数组排序python数组排序
时间: 2024-09-04 09:04:26 浏览: 71
python数组 python数组方法
Python中,数组通常是指列表(list)类型的对象,而排序是指按照一定的规则对列表中的元素进行顺序调整。在Python中,可以使用多种方法对列表进行排序,其中最常用的方法包括使用内置的`sort()`方法和`sorted()`函数。
1. 使用`sort()`方法:
- `sort()`方法用于就地排序,即直接修改原列表,不会创建新的列表。
- `sort()`方法可以接受两个可选参数:`key`和`reverse`。
- `key`参数接受一个函数,该函数会在每个元素比较之前被调用,用于提取用于比较的值。
- `reverse`参数是一个布尔值,默认为`False`,当设置为`True`时列表会以降序排列。
示例代码:
```python
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
numbers.sort() # 默认升序排序
print(numbers) # 输出: [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
# 按字符串长度排序
fruits = ['banana', 'pie', 'Washington', 'book']
fruits.sort(key=len)
print(fruits) # 输出: ['pie', 'book', 'banana', 'Washington']
```
2. 使用`sorted()`函数:
- `sorted()`函数不会改变原列表,而是返回一个新的已排序列表。
- `sorted()`同样可以使用`key`和`reverse`参数。
示例代码:
```python
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
sorted_numbers = sorted(numbers) # 升序排序
print(sorted_numbers) # 输出: [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
# 降序排序
sorted_numbers_desc = sorted(numbers, reverse=True)
print(sorted_numbers_desc) # 输出: [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
```
阅读全文