为什么.sort()实际上改变了变量?

时间:2017-04-01 15:58:24

标签: python

我正在学习Python,我遇到了排序方法,我想了解为什么运行排序。()实际上更改了列表而我不必重新分配它?

>>> list = [88,1,4,56,9,7,8,9]
>>> list
[88, 1, 4, 56, 9, 7, 8, 9]
>>> list.sort()
>>> list
[1, 4, 7, 8, 9, 9, 56, 88]

2 个答案:

答案 0 :(得分:1)

.sort()是列表类的一种方法。这意味着当它被调用时直接改变存储在类中的列表。

答案 1 :(得分:0)

基本上,因为它可以。
列表是可变对象,因此sort()方法可以修改它。已经存在sorted()函数,因此将对象保持不变是没有多大意义的。
字符串是不可变的,因此无法对其进行修改。 upper()方法无法修改原始字符串。