Python中sort()和sorted()函数的区别
Python中sort()和sorted()函数均为排序函数,但二二在使用时还是有一定的不同。
sort()函数是列表的一个方法,直接修改原列表,不返回新列表。即在原列表上进行排序操作。sort()函数只能对列表进行排序操作。
语法:
lst.sort(key=None, reverse=False)
其中,key是定义一个函数,用于进行比较排序的标准,reverse为True则降序排列,为False则升序排列。
示例:
lst = [3, 2, 6, 4, 1, 5]
lst.sort()
print(lst)
# 输出:[1, 2, 3, 4, 5, 6]
sorted()函数也是排序函数,但它是一个内置函数,它可以对字符串、元组、列表等可迭代对象进行排序,并返回一个新的排好序的列表。
语法:
sorted(iterable, /, *, key=None, reverse=False)
其中,iterable是需要排序的可迭代对象,key和reverse的含义和sort()一致。sorted()函数返回一个新列表。
示例:
lst = [3, 2, 6, 4, 1, 5]
new_lst = sorted(lst)
print(new_lst)
# 输出:[1, 2, 3, 4, 5, 6]
sort()和sorted()的区别总结:
1. sort()函数是列表的一个方法,sorted()函数是内置函数。
2. sort()函数直接修改原列表,不返回新列表;sorted()函数返回一个新的排好序的列表,原列表不变。
3. sort()函数只能对列表进行排序操作,sorted()函数可以对字符串、元组、列表等可迭代对象进行排序。
4. sort()和sorted()的参数含义相同。
综上所述,sort()和sorted()是Python中两个常用的排序函数,虽然它们的性质不同,但均可以实现排序操作,应根据具体情况进行选择。
