Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中从key1的最大值列表中找到key2的最小值对象_Python_Arrays_List_Max_Min - Fatal编程技术网

如何在python中从key1的最大值列表中找到key2的最小值对象

如何在python中从key1的最大值列表中找到key2的最小值对象,python,arrays,list,max,min,Python,Arrays,List,Max,Min,我有一个字典对象列表,比如[{'year':2017,'q':2,'category'=c}],每个对象都有3个字段,如下所示: [{2015,1,w} {2015,3,q} {2017,2,a} {2012,5,b} {2017,5,p} {2013,3,a} {2015,4,a} {2017,1,d} {2016,2,e} ] 如何首先按最大年份对列表排序,然后在最大年份对象之间排序,我想找到具有最小键2值的对象。实际上,首先我想根据两个键(最大键1和最小键2)对列表进行排序,得到以下列表

我有一个字典对象列表,比如
[{'year':2017,'q':2,'category'=c}]
,每个对象都有3个字段,如下所示:

[{2015,1,w}
{2015,3,q}
{2017,2,a}
{2012,5,b}
{2017,5,p}
{2013,3,a}
{2015,4,a}
{2017,1,d}
{2016,2,e}
]
如何首先按最大年份对列表排序,然后在最大年份对象之间排序,我想找到具有最小键2值的对象。实际上,首先我想根据两个键(最大键1和最小键2)对列表进行排序,得到以下列表:

[{2017,1,d}
{2017,2,a}
{2017,5,p}
{2016,4,e}
{2015,1,w}
{2015,3,q}
{2015,4,a}
{2013,3,a}
{2012,5,b}]

最后,从列表返回
{2017,1,d}
集合
是无序的,因此我假设您要对列表列表进行排序,可以使用
排序()
执行以下操作:

Python2.4
开始,
list.sort()
sorted()
都添加了一个 参数,指定要在每个列表元素上调用的函数 在进行比较之前


我用过类似的东西,但你的对象必须是列表:

ordered_l =sorted(sorted(your_list,key=itemgetter(1),reverse=False),key=itemgetter(0),reverse=True)

{2015,1,w}
-这是无效的符号。它不可能是一个dict。也许,你指的是元组。无论如何,你应该更新你的问题
ordered_l =sorted(sorted(your_list,key=itemgetter(1),reverse=False),key=itemgetter(0),reverse=True)