python sort函数和sorted函数
时间: 2024-05-18 22:11:09 浏览: 170
python使用sorted函数对列表进行排序的方法
`sort` 函数和 `sorted` 函数都可以用来对 Python 列表进行排序,但它们有一些区别。
`sort` 函数是一个列表方法,它直接修改原始列表,将其排序。这意味着原始列表的顺序会被改变,且函数没有返回值。例如:
```python
numbers = [5, 2, 8, 1, 3]
numbers.sort()
print(numbers) # 输出 [1, 2, 3, 5, 8]
```
另一方面,`sorted` 函数是一个内置函数,它接受一个可迭代对象作为参数,并返回一个新的已排序的列表,而不改变原始列表的顺序。这意味着函数会返回排序后的列表,而不影响原始列表。例如:
```python
numbers = [5, 2, 8, 1, 3]
sorted_numbers = sorted(numbers)
print(sorted_numbers) # 输出 [1, 2, 3, 5, 8]
print(numbers) # 输出 [5, 2, 8, 1, 3]
```
此外,`sorted` 函数还可以接受额外的参数,例如 `reverse=True` 可以实现降序排序:
```python
numbers = [5, 2, 8, 1, 3]
sorted_numbers = sorted(numbers, reverse=True)
print(sorted_numbers) # 输出 [8, 5, 3, 2, 1]
```
总结来说,如果你想原地修改列表并且不需要返回值,可以使用 `sort` 函数;如果你想获得一个新的已排序列表而不改变原始列表的顺序,可以使用 `sorted` 函数。
阅读全文