我们在生活中常常会遇到一堆无序的数字,有时候为了让结果更加直观,常常需要对这些无序的数字进行升序或者降序排序,那么今天呢,也正好是Python复习的第一节,那么就来谈一谈如何用Python语言来实现列表排序。
题目要求:给定列表L,其中包含的数字为L=[4,2,25,7777777,100,3],要求对该组数据进行升序与降序的排序。
梳理逻辑
可以发现,给定的一组数组L=[4,2,25,7777777,100,3],如果要进行升序和降序得到的结果分别是[2,3,4,25,100,7777777]和[7777777,100,25,4,32,2]。
对于Python语言来说,我们有两种方法来实现升序和降序,第一种就是传统方法,对给定的数据进行两两比较,并且交换位置,与冒泡排序类似;第二种方法就是直接使用Python中自带的sort函数,sort函数用于排序,它的语法是L.sort(cmp=None,key=None,reverse=False)。
cmp表示可选参数,key表示用来比较的元素,reverse表示排序规则。
传统方法
代码实现
#!/usr/bin/python3
L=[4,2,25,7777777,100,3]
Temp = 0
for i in range(len(L)):
for j in range(0,len(L)-1):
if L[j]>L[j+1]:
Temp = L[j+1]
L[j+1] = L[j]
L[j] = Temp
print(L)
当然,我这里只是先针对列表升序进行了讲解,对于列表降序而言,只需要修改L[j] 代码实现 可以发现,使用了sort方法,整个代码量迅速减少,并且也能得到相同的效果,非常方便。 总的来说,Python语法相对还是比较简单,而且已经有了成型的函数可以使用,像这种排序,可以直接使用sort方法来完成,非常方便。sort方法
#!/usr/bin/python3
L=[4,2,25,7777777,100,3]
L.sort(reverse=True)
print(L)
总结