python中使用sorted()函数对列表对象进行临时排序

我的博文《python中使用.sort()方法对列表元素进行永久排序》
介绍了如何使用list.sort()方法对列表元素进行排序,值得注意的是,这种方法是list对象自带的方法,在使用后会改变list里面的内容,也就是所谓的永久性排序,如果不想改变原来的值,我们就需要使用所谓的临时性排序的方法,在python中提供了sorted()函数来完成这个任务,同样的,我们可以使用reverse参数来指定是否逆序排列。我们可以使用以下程序来进行演示:

car_list = ['honda','toyota','suzuki','mazda','subaru']
print(car_list)
print(sorted(car_list))
print(car_list)
print(sorted(car_list,reverse=True))
print(car_list)	

运行后输出的结果如下:

['honda', 'toyota', 'suzuki', 'mazda', 'subaru']
['honda', 'mazda', 'subaru', 'suzuki', 'toyota']
['honda', 'toyota', 'suzuki', 'mazda', 'subaru']
['toyota', 'suzuki', 'subaru', 'mazda', 'honda']
['honda', 'toyota', 'suzuki', 'mazda', 'subaru']
[Finished in 1.6s]

如果列表中的元素是字典,我们还可以指定排列对象需要依据的关键参数key:
我们来看下面的例子

xiaoming={
	'name':'xiaoming',
	'age':20,
	'gender':'male',
}


xiaohong={
	'name':'xiaoming',
	'age':18,
	'gender':'female',
}


xiaoli={
	'name':'xiaoming',
	'age':19,
	'gender':'male',
}


dic_list = [xiaoming,xiaoli,xiaohong]
print(sorted(dic_list,key = lambda x: x['age'],reverse=True))

输出的结果如下:

[{'name': 'xiaoming', 'age': 20, 'gender': 'male'}, {'name': 'xiaoming', 'age': 19, 'gender': 'male'}, {'name': 'xiaoming', 'age': 18, 'gender': 'female'}]
[Finished in 0.8s]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值