Python:访问元组中的字典值,并按dict值快速排序

Python:访问元组中的字典值,并按dict值快速排序,python,dictionary,sorting,tuples,Python,Dictionary,Sorting,Tuples,我知道这还不清楚。下面是我具体要做的。我的字典列表如下: dict=[{int=0,value=A},{int=1,value=B},…n] 我想把它们组合起来,所以我使用了itertools,它给了我一个元组(好吧,它给了我一个内存对象,然后我使用enumerate,这样我就可以循环它,enumerate给了ma元组): 对于枚举(组合(dict,2))中的(索引,元组): 这就是我的问题所在。我想确定组合中的两个项中哪个具有较大的“int”值,哪个具有较小的值,并将它们分配给变量(我实际上在

我知道这还不清楚。下面是我具体要做的。我的字典列表如下:

dict=[{int=0,value=A},{int=1,value=B},…n]

我想把它们组合起来,所以我使用了itertools,它给了我一个元组(好吧,它给了我一个内存对象,然后我使用enumerate,这样我就可以循环它,enumerate给了ma元组):

对于枚举(组合(dict,2))中的(索引,元组):

这就是我的问题所在。我想确定组合中的两个项中哪个具有较大的“int”值,哪个具有较小的值,并将它们分配给变量(我实际上在组合中使用了2个以上的项,因此我不能只说tuple[0]['int']>tuple[1]['int']做作业,因为我要把它列出来很多次,这很难管理)

我将把每个“int”值赋给一个变量,在一个列表中对其排序,用1,2,3,4,5索引列表中的“int”值。。。等等,然后返回并通过int值访问我想要的字典,然后将字典分配给一个变量,以便我知道哪个更大。但我有一个很大的列表,列表和变量分配是资源密集型的,这需要很长时间(我只写了一点点,而且运行起来要花很长时间)

所以我希望有人知道一种快速的方法。实际上,我可以使用if/thens列出所有可能的赋值项组合,但它就像5页的if/thens和赋值一样,当我想要更改它时,很难阅读和管理

你可能已经收集到了,但我对编程是新手。thx

for (index, tuple) in enumerate(combinations(dict, 2)):
    thesmall = min(tuple, key=lambda d: d['int'])
    thelarge = max(tuple, key=lambda d: d['int'])
如果您需要的不仅仅是最小值和最大值,那么

    inorder = sorted(tuple, key=lambda d: d['int'])

在这里,您可以根据需要将所有的dict按顺序排列。

显示一些完整的代码。很难理解您正在尝试做什么或您拥有什么。稍微大一点的数据子集,在您的程序中使用它时进行格式化,将非常有帮助,以及子集所需的结果。您的示例甚至可以编辑ed,仍然不清楚其意图。可以通过使用
操作符.itemgetter
避免使用lambda,例如
inoorder=sorted(tuple,key=operator.itemgetter('int'))
虽然据说速度更快,但新程序员可能对此不感兴趣,除非新程序员发现
lambda
的使用令人困惑或不清楚。在这种情况下,新程序员在使用
操作符.itemgetter
之前被提醒导入操作符tertools,新程序员可能理解导入的机制:)