Fork me on GitHub

高阶函数sorted

# ### sorted 
'''
sorted(iterable,reverse=False,key="函数")
功能:	排序
	把可迭代性的数据进行排序.
参数:
	iterable: 可迭代型数据(常用:容器类型数据 range对象 迭代器)
	reverse=False 从小到大排序 (升序,正序)
	reverse=True  从大到小排序 (降序,倒序)
	key = 内置函数 或者 自定义函数
返回值:
	排序后的结果
'''

# (1)从小到大排序
# listvar = [-99,13,24,0]
# listvar.sort()
# print(listvar)

listvar = [-99,13,24,0]
res = sorted(listvar)
print(res)

# (2)从大到小排序
listvar = [-99,-13,24,0]
res = sorted(listvar,reverse=True)
print(res)

# (3)利用内置函数进行排序
'''
# abs 绝对值函数
'''
res = sorted(listvar,key=abs)
print(res)
'''
0   => 0
-13 => 13
24  => 24
-99 => 99
'''

# (4)利用自定义函数进行排序
def func(n):
	return n % 10	

listvar = [91,23,44,19]
res = sorted(listvar,key=func)
print(res)
'''
91 => 1
23 => 3
44 => 4
19 => 9
'''

"""
sort 和 sorted 用法是一样的,只是注意语法的格式不同
sort   是直接更改原有列表
sorted 是产生一个新的副本,新的数据 (推荐)
"""
listvar = [91,23,44,19]
listvar.sort(key=func)
print(listvar)

  

posted @ 2019-05-22 16:08  MR_黄Python之路  阅读(197)  评论(0编辑  收藏  举报