Python中的sort()
函数主要用于对列表(list)中的元素进行排序。它有两种形式:一种是列表的方法(即直接对列表对象调用),另一种则是内置的sorted()
函数,它返回一个新的已排序列表,而不改变原始列表。
列表的sort()方法
使用列表的sort()
方法时,它会直接修改原列表,使其元素按照升序(从小到大)排列。
基本用法:
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
my_list.sort()
print(my_list) # 输出:[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
参数:
-
reverse=True
:降序排序 -
key
:用于比较的函数,例如按照字符串长度排序或按照元素的某个属性排序
示例:
降序排序:
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
my_list.sort(reverse=True)
print(my_list) # 输出:[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
使用key
参数:
假设我们有一个包含字典的列表,我们想要根据字典中的某个值进行排序:
data = [{'name': 'Alice', 'age': 25}, {'name': 'Bob', 'age': 20}, {'name': 'Charlie', 'age': 23}]
data.sort(key=lambda item: item['age'])
print(data)
# 输出:[{'name': 'Bob', 'age': 20}, {'name': 'Charlie', 'age': 23}, {'name': 'Alice', 'age': 25}]
内置的sorted()函数
sorted()
函数接受一个可迭代对象(如列表、元组等)作为输入,并返回一个新的已排序列表。原列表不会被修改。
基本用法:
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
sorted_list = sorted(my_list)
print(sorted_list) # 输出:[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
print(my_list) # 输出:[3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5],原列表未被修改
参数:
sorted()
函数的参数与sort()
方法相同,包括reverse
和key
。文章来源:https://www.toymoban.com/news/detail-846340.html
总之,sort()
和sorted()
在功能上是相似的,主要区别在于前者会修改原列表,而后者会返回一个新的已排序列表。根据你的具体需求选择使用哪个函数。文章来源地址https://www.toymoban.com/news/detail-846340.html
到了这里,关于Python中的sort()与sorted()用法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!