python - 比较列表中的项目并选择最大的

标签 python

lista = [['Apertura','174830','Apertura - Home - Header_n','Variable (950x90)','AR','1','0','0.82','81','1.23',0.3,3],
         ['Apertura','174830','Apertura - Home - Header_n','Variable (950x90)','AR','1','0','0.82','81','1.23',0.25,5]
]

我需要比较 list 上的所有项目。 在每个项目中,我们使用除最后两个之外的所有项目进行比较。 如果有相同的项目,我们选择最后一个项目编号最小的项目,我们不进行比较

>>>['Apertura','174830','Apertura - Home - Header_n','Variable (950x90)','AR','1','0','0.82','81','1.23',0.3,3]

我使用了此表单,但知道我不能用它来做到这一点。

lista = [min(g, key=itemgetter(-2)) for _, g in groupby(lista, key=lambda s: s[:-2])]

最佳答案

  1 lista = [
  2     [
  3         'Apertura','174830','Apertura - Home - Header_n','Variable (950x90)',
  4         'AR','1','0','0.82','81','1.23',0.3,3
  5     ],   
  6     [
  7         'Apertura','174830','Apertura - Home - Header_n','Variable (950x90)',
  8         'AR','1','0','0.82','81','1.23',0.25,5
  9     ]
 10 ]
 11 
 12 if lista[0][:-2] == lista[1][:-2]:
 13     if lista[0][-1] < lista[1][-1]:
 14         print(lista[0])
 15     else:
 16         print(lista[1])

输出

['Apertura', '174830', 'Apertura - Home - Header_n', 'Variable (950x90)', 'AR', '1', '0', '0.82', '81', '1.23', 0.3, 3]

如果我正确理解您正在寻找的内容,我们是否可以将列表与倒数第二个项目进行比较,然后如果相等,则比较最后一个项目?

关于python - 比较列表中的项目并选择最大的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52212882/

相关文章:

python - Cython 中的空字符问题

python - 无法导入 flask ,因为 werkzeug

java - 必须从 Blob 上传回调请求中调用

python - 在 Debian 操作系统上使用 pandas 从 github 存储库读取 csv 文件时出现奇怪的 csv 输出

python - 通过tornado.proces.Subprocess调用xtail

python - 在 Python 中创建目录然后打开其中的文件时出错,但如果目录已存在则不会出错

python - 在 Django 中非规范化数据的最佳方法?

python - 在 Python 中重现 MATLAB 的 imgaborfilt

python - 按值传递可变对象

python - 在 AWS 上运行 Twisted 的问题