Python中sort()和sorted()的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中sort()和sorted()的区别相关的知识,希望对你有一定的参考价值。

1、sort()是可变对象(字典)的方法,无参数无返回值,  sort()会改变可变对象,因此无需返回值。例如:

list:

1 >>> a = [4,3,7,8]
2 >>> a.sort()
3 >>> a
4 [3, 4, 7, 8]

即sort()直接将可变对象的值给改变了。

 

2、sorted()是python的内置函数,并不是可变对象(列表、字典)的特有方法,sorted()函数需要一个参数(参数可以是列表、字典、元组、字符串),无论传递什么参数,都将返回一个以列表为容器的返回值,如果是字典将返回键的列表。

list:

1 >>> a = [4,3,7,8]
2 >>> sorted(a)
3 [3, 4, 7, 8]
4 >>> a
5 [4, 3, 7, 8]

即sorted会返会一个list副本,同时将原来list的值改变了可将这个返回的值赋给其他变量。

 

dict:

1 >>> b = {1:ab,2:degg,4:ght,9:d}
2 >>> sorted(b)
3 [1, 2, 4, 9]
4 >>> b
5 {1: ab, 2: degg, 4: ght, 9: d}

即sorted(dict)时,是按key排序,同时将key返回成一个列表。

 

以上是关于Python中sort()和sorted()的区别的主要内容,如果未能解决你的问题,请参考以下文章

python中sort和sorted的区别

python中sort()与sorted()的区别

Python列表sort和sorted的区别

面试题编程题02-python sort和sorted用法与区别

python中sorted方法和列表的sort方法

sort 和sorted的 区别