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)

相关文章

python xml解析实例详解

python xml解析 first.xml  <info> <person > <id>1</id> <n...

python修改txt文件中的某一项方法

python修改txt文件中的某一项方法

在做task中,需要将TXT文本中的某一项注释修改,但是python对txt文本只有写入和读取两种操作。 我采用的方法是: 1.读取txt文件,将每一行数据,加入新建立的list中。 2...

python获取中文字符串长度的方法

如下所示: print len('哈哈'.decode('utf-8')) #unicode格式 print len('哈哈') #utf-8格式 以上这篇python获取中文字符...

解决python3.5 正常安装 却不能直接使用Tkinter包的问题

一个小的解决方法分享: 正常安装的情况下,你所需要的包都能在python文件夹下找到,找到你所需要的包 ,把它复制到Python35\Lib\site-packages 这个文件夹下,这...

Python利用matplotlib做图中图及次坐标轴的实例

Python利用matplotlib做图中图及次坐标轴的实例

图中图 准备数据 import matplotlib.pyplot as plt fig = plt.figure() x = [1, 2, 3, 4, 5, 6, 7] y =...