python中sort跟sorted有什么区别
时间: 2023-12-01 13:03:06 浏览: 76
cn_sort:中文排序:按拼音笔顺快速排序简体中文词组(百万数量级,可含中英多音字)。如果对您有所帮助,欢迎点个star鼓励一下
`sort()`和`sorted()`都是Python中用于排序的函数,但是它们有一些重要的区别。
`sort()`函数是一个列表方法,它可以直接对原列表进行排序,而不是返回一个新的排序后的列表。`sort()`方法没有返回值,它只是把原来的列表改变了。
例如:
```python
list1 = [3, 1, 4, 1, 5, 9, 2, 6, 5]
list1.sort()
print(list1) # [1, 1, 2, 3, 4, 5, 5, 6, 9]
```
`sorted()`函数是一个内置函数,它可以对所有可迭代对象进行排序,包括列表、元组、字典、字符串等,并且返回一个新的排序后的列表,不改变原来的对象。`sorted()`函数需要传递一个可迭代对象作为参数。
例如:
```python
list1 = [3, 1, 4, 1, 5, 9, 2, 6, 5]
sorted_list = sorted(list1)
print(sorted_list) # [1, 1, 2, 3, 4, 5, 5, 6, 9]
print(list1) # [3, 1, 4, 1, 5, 9, 2, 6, 5]
```
因此,如果你要对一个列表进行排序并且不需要保留原有的列表,则使用`sort()`方法。如果你需要保留原有列表并且得到一个新的排序后的列表,则使用`sorted()`函数。
阅读全文