python列表中常见的一些排序方法
1、冒泡排序法
让列表中的一项和下一项作比较,若前一项大于后一项则交换两者位置(升序)。
方法一:直接使用for循环
L=[8,2,50,3]
for i in range(len(L)):
for j in range(i+1,len(L)):
if L[i]>L[j]:
L[i],L[j]=L[j],L[i]
print(L)方法二:使用while语句
L=[8,2,50,3]
n=0
while n<len(L)-1:
n+=1
i=0
while i<len(L)-1:
if L[i]>L[i+1]:
L[i],L[i+1]=L[i+1],L[i]
i+=1
print(L)2、选择排序法
在未排序的列表中找到最小元素,存放在列表的最前面,然后再从剩余的元素中寻找最小的,放到已排序列表的末尾,以此类推,直到所有元素排序完毕(升序)
方法一:remove和append同时使用
L=[8,2,50,3]
l=[] # 创建一个空列表用于存放排序后的数据
for i in range(len(L)):
a=min(L) # 创建一个变量存放最小值
l.append(a) # 向空列表中加入数据
L.remove(a) # 在原列表中将最小值剔除
print(l)方法二:pop和append同时使用
L=[8,2,50,3]
# 创建函数寻找最小元素的索引值
def Smallest(L):
smallest = L[0]
s = 0 # 创建变量用于存放索引值
for i in range(1, len(L)):
if L[i] < smallest:
s = i
smallest = L[i]
return s # 返回最小元素的列表索引值
l = [] # 创建一个空列表用以存放排序后的数据
for i in range(len(L)):
smallest = Smallest(L)
l.append(L.pop(smallest)) # pop方法后跟元素当前列表最小值的索引值
print(l)3、list.sort()方法
iterable.sort(self,key,reverse)
iterable以为可迭代对象,可以是列表、集合、字典
key是函数,指定取待排序元素的函数规则
reverse实现降序排序,需要提供一个bool值,默认为False(升序)
L=[8,2,50,3] L.sort() print(L)
4、sorted()函数
sorted(iterable,key=None,reverse=False)
key:通过这个参数可以自定义排序逻辑
L=[8,2,50,3] l=sorted(L) print(l)
总结
到此这篇关于python列表中常见的一些排序方法的文章就介绍到这了,更多相关python列表排序方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)
这篇文章主要介绍了Python 利用邮件系统完成远程控制电脑(关机、重启等),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-11-11
Python将Office文档(Word、Excel、PDF、PPT)转为OFD格式的实现方法
OFD(Open Fixed-layout Document )是我国自主制定的一种开放版式文件格式标准,如果想要通过Python将Office文档(如Word、Excel或PowerPoint)及PDF文档转换为OFD格式,可以参考本文中提供的实现方法,需要的朋友可以参考下2024-06-06
django queryset 去重 .distinct()说明
这篇文章主要介绍了django queryset 去重 .distinct()说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-05-05


最新评论