python字典多条件排序方法实例

yipeiwu_com6年前Python基础

项目编写过程中,总能遇见对字典进行排序什么的,如果要实现多条件排序只需要下面几行代码实现。充分体现了python的好处了。

复制代码 代码如下:

teamitems = [{'team':'France'     , 'P':1 , 'GD':-3 , 'GS':1 , 'GA':4},
            {'team':'Uruguay'     , 'P':7 , 'GD':4  , 'GS':4 , 'GA':0},
            {'team':'SouthAfrica' , 'P':4 , 'GD':-2 , 'GS':3 , 'GA':5},
            {'team':'Mexico'      , 'P':4 , 'GD':1  , 'GS':3 , 'GA':2}]

print sorted(teamitems ,key = lambda x:(x['P'],x['GD'],x['GS'],x['GA']),reverse=True)


以上代码实现了 按‘P',‘GD' ,‘GS' ,'GA' 四条件排序,reverse=True 表示降序

当然还可以

复制代码 代码如下:

from operator import itemgetter
print sorted(teamitems ,key = itemgetter('P','GD','GS','GA'),reverse=True)

相关文章

Flask框架踩坑之ajax跨域请求实现

Flask框架踩坑之ajax跨域请求实现

业务场景: 前后端分离需要对接数据接口。 接口测试是在postman做的,今天才开始和前端对接,由于这是我第一次做后端接口开发(第一次嘛,问题比较多)所以在此记录分享我的踩坑之旅,以便能...

python发送多人邮件没有展示收件人问题的解决方法

背景: 工作过程中需要对现有的机器、服务做监控,当服务出现问题后,邮件通知对应的人 问题: 使用python 2.7自带的email库来进行邮件的发送,但是发送后没有展示收件人列表内容...

python使用wxpython开发简单记事本的方法

python使用wxpython开发简单记事本的方法

本文实例讲述了python使用wxpython开发简单记事本的方法。分享给大家供大家参考。具体分析如下: wxPython是Python编程语言的一个GUI工具箱。他使得Python程序...

打包发布Python模块的方法详解

前言 昨天把自己的VASP文件处理库进行了打包并上传到PyPI,现在可以直接通过pip和easy_install来安装VASPy啦(同时欢迎使用VASP做计算化学的童鞋们加星和参与进来)...

python基础教程之分支、循环简单用法

本文实例讲述了python分支、循环简单用法。分享给大家供大家参考,具体如下: 讲程序设计,不得不讲到顺序、分支、循环。 顺序就是从上到下运行代码,这个很简单,不用再说了。 在讲分支、循...