python中列表元素的排序与反转

python语言中的列表排序方法有三个:reverse反转排序、sort排序、sorted可以获取排序后的列表。在更高级列表排序中,后两中方法还可以加入条件参数进行排序。

1、reverse反转排序

reverse() 函数没有返回值,但是会对列表的元素进行反向排序。

list = [2, 1, 3, 5, 4]
list.reverse()
print(list)
#[4, 5, 3, 1, 2]

list = [2, 1, 'hello', 5, 'world']
list.reverse()
print(list)
#['world', 5, 'hello', 1, 2]

2、sort排序

sort()函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。默认是正向排序。

reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。

list = [2, 3, 4, 5, 1]
list.sort()
print(list)
#[1, 2, 3, 4, 5]

list = [2, 3, 4, 5, 1]
list.sort(reverse=True)
print(list)
#[5, 4, 3, 2, 1]

list = ['aa', '1', 'bb', 'cc', '2']
list.sort()
print(list)
#['1', '2', 'aa', 'bb', 'cc']

list = ['aa', '1', 'bb', 'cc', '2']
list.sort(reverse=True)
print(list)
#['cc', 'bb', 'aa', '2', '1']

3、sorted排序

sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

sorted 语法:

sorted(iterable[, cmp[, key[, reverse]]])

参数说明:

  • iterable -- 可迭代对象。
  • cmp -- 比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。
  • key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
  • reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)

python中列表元素的排序与反转