如果列表中两个子列表的组件具有相等的max值(list,key=itemgetter[7]),则只返回on

2024-06-01 03:36:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用python v2.7,我有一个包含4个列表的列表。在list_720中,我想保留得分最高的列表。分数是每个子列表的最后一项list_720[7]。这两个子列表的得分相同,为6.5分。在这种情况下,我想保留最大值为list_720[3]的一个

from operator import itemgetter

list_720 = [
    ['encoding_txt\\pirkagia_10b_720x576_15_qp_22_ON_encoder_randomaccess_B16_Filters_ON_scalable_JOURNAL2017.txt',
        '720x576', 22, 39.9292, 1995.6394, 5014.911, 10.183, 5.5],
    ['encoding_txt\\pirkagia_10b_720x576_15_qp_20_ON_encoder_randomaccess_B16_Filters_ON_scalable_JOURNAL2017.txt',
        '720x576', 20, 41.5031, 3072.097, 5639.054, 11.604, 5.5],
    ['encoding_txt\\pirkagia_10b_720x576_25_qp_22_ON_encoder_randomaccess_B16_Filters_ON_scalable_JOURNAL2017.txt',
        '720x576', 22, 39.9292, 3326.0656, 4981.942, 10.264, 6.5],
    ['encoding_txt\\pirkagia_10b_720x576_25_qp_20_ON_encoder_randomaccess_B16_Filters_ON_scalable_JOURNAL2017.txt',
        '720x576', 20, 41.5031, 5120.1616, 5589.295, 11.265, 6.5],
]

使用max(list_720, key=itemgetter(7))我只得到第一个子列表,它的分数最高,但不正确

是否有一种基于list_720[3]值的简单选择方法


Tags: txtencoder列表on分数filterslistencoding