在本教程中,我们将看到如何对字符串列表进行排序。我们将使用sort方法和sorted函数对给定的字符串列表进行排序。然后,我们将了解如何根据不同的条件(例如长度,值等)对字符串列表进行排序,
让我们看看如何使用list.sort方法对字符串列表进行排序。排序方法列表是一个insort。它将直接对原始列表进行排序。让我们看一下代码。
示例#字符串列表
strings = ['Python', 'C', 'Java', 'Javascript', 'React', 'Django', 'Spring']
#按升序对列表进行排序
strings.sort()
#打印排序列表
print(strings)
输出结果
如果执行上述程序,则将得到以下结果。['C', 'Django', 'Java', 'Javascript', 'Python', 'React', 'Spring']
我们可以按降序对列表进行排序,其中参数reverse为True即可进行排序。让我们看一下按降序对列表进行排序的代码。
示例#字符串列表
strings = ['Python', 'C', 'Java', 'Javascript', 'React', 'Django', 'Spring']
#以降序对列表进行排序
strings.sort(reverse=True)
#打印排序列表
print(strings)
输出结果
如果执行上述程序,则将得到以下结果。['Spring', 'React', 'Python', 'Javascript', 'Java', 'Django', 'C']
我们已经看到了如何使用sort方法对字符串列表进行排序。让我们看看如何使用内置函数sorted对字符串列表进行排序。
示例#字符串列表
strings = ['Python', 'C', 'Java', 'Javascript', 'React', 'Django', 'Spring']
#按升序对列表进行排序
sorted_strings = sorted(strings)
#打印排序列表
print(sorted_strings)
输出结果
如果执行上述程序,则将得到以下结果。['C', 'Django', 'Java', 'Javascript', 'Python', 'React', 'Spring']
我们还可以使用sorted函数,通过将True作为第二个参数(reverse)传递给函数,从而对列表进行降序排序。让我们看一下代码。
示例#字符串列表
strings = ['Python', 'C', 'Java', 'Javascript', 'React', 'Django', 'Spring']
#以降序对列表进行排序
sorted_strings = sorted(strings, reverse=True)
#打印排序列表
print(sorted_strings)
输出结果
如果执行上述程序,则将得到以下结果。['Spring', 'React', 'Python', 'Javascript', 'Java', 'Django', 'C']
如果我们想根据长度对字符串列表进行排序怎么办?是的,我们可以使用sort方法和sorted函数根据长度进行排序,方法是将键作为参数传递给我们,让我们看看如何根据字符串的长度对列表进行排序。
示例#字符串列表
strings = ['Python', 'C', 'Java', 'Javascript', 'React', 'Django', 'Spring']
#以升序对列表进行排序-长度
strings.sort(key=len)
#打印排序列表
print(strings)
输出结果
如果执行上述程序,则将得到以下结果。['C', 'Java', 'React', 'Python', 'Django', 'Spring', 'Javascript']
我们可以将任何函数传递给key参数。sort方法将根据给定给键参数的函数的返回值对列表进行排序。同样的道理也适用于排序后的函数。
让我们来看一个使用sorted函数的示例,该示例根据字符串的值对字符串列表进行排序。
示例#字符串列表
strings = ['7', '34', '3', '23', '454', '12', '9']
#以升序对列表进行排序-int值
sorted_strings = sorted(strings, key=int)
#打印排序列表
print(sorted_strings)
输出结果
如果执行上述程序,则将得到以下结果。['3', '7', '9', '12', '23', '34', '454']
结论
我们可以一次将键和reverse参数传递给sort方法和sorted函数,来实现我们想要的排序方式。