Python笔记_第四篇_高阶编程_高阶函数_3.sorted
1. sorted函数:
常用的排序分:冒泡排序、选择排序、快速排序、插入排序、计数器排序
实例1:普通排序
# 普通排序 list1 = [4,7,2,6,3] list2 = sorted(list1) # 升序排序 print(list1) print(list2) # [4, 7, 2, 6, 3] # [2, 3, 4, 6, 7]
实例2:按绝对值大小排序
# 按绝对值大小排序 list3 = [4,-7,2,6,-3] # key接受函数来实现自定义排序规则,取绝对值排序后,在添加绝对值 # list4 = sorted(list3,key=abs) # [4, -7, 2, 6, -3] # [2, -3, 4, 6, -7] # 也可以用map方式,但是绝对值符合去掉了,是取绝对值后再排序 list4 = sorted(map(abs,list3)) # [4, -7, 2, 6, -3] # [2, 3, 4, 6, 7] print(list3) print(list4)
实例3:
# 按照降序排列 list5 = [4,7,2,6,3] list6 = sorted(list5,reverse=True) # 升序排序 print(list5) print(list6) # [4, 7, 2, 6, 3] # [7, 6, 4, 3, 2]
实例4:按照字符串的长短排序
# 按照字符串的长短来排序 list7 = ['b333','a1111111','c22','d5554'] list8 = sorted(list7,key=len) #默认长度排列 print(list7) print(list8) # ['b333', 'a1111111', 'c22', 'd5554'] # ['c22', 'b333', 'd5554', 'a1111111']
实例5:自定义函数的形式,按照字符串的长短来排序
# 按照字符串的长短来排序,可以自定义函数的形式 def myLen(str): return len(str) list9 = ['b333','a1111111','c22','d5554'] list10 = sorted(list9,key=myLen) #默认长度排列 print(list9) print(list10) # ['b333', 'a1111111', 'c22', 'd5554'] # ['c22', 'b333', 'd5554', 'a1111111']
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。