【发布时间】:2021-09-16 09:24:32
【问题描述】:
我有他的清单:
[['191', '279', '1488', '1425']
['191', '279', '1488', '855']
['191', '279', '1488', '1140']
['191', '279', '1488', '285']
['191', '279', '1488', '665']
['191', '279', '1488', '570']
['104', '264', '1488', '1140']
['191', '279', '1488', '760']
['104', '264', '1488', '760']
['104', '264', '1488', '665']
['104', '264', '1488', '1425']
['104', '264', '1488', '285']
['104', '264', '1488', '855']]
如果第一个和第二个值相同,我需要通过循环找到最大值,否则我取唯一值。
例如,这里我想要结果:
maxlist = [['191','279','1488','1425'],['104','264','1425']]
我已经试过了:
maxlist = []
for i in res:
i = i.split(";")
finallist.append(i)
for i in finallist:
for x in finallist:
if x[0] == i[0] and x[1] == i[1]:
maxlist.append(int(x[3]))
try:
finallist.remove(i)
except:
pass
maxresult = max(maxlist)
valueA = x[0]
valueB = x[1]
valueC = x[2]
print(valueA+str(" ")+str(valueB)+str(" ")+str(valueC)+str(" ")+str(maxresult))
【问题讨论】:
-
你的逻辑不清楚,能详细解释一下吗?
-
对于列表的每个元素,如果第一个和第二个值相同,我需要找到最后一个值的所有值。
-
为什么预期结果中没有 1488 ['104','264','1425']?
-
抱歉,仍然不清楚,什么是“找到第三个值的所有值”以及它如何匹配提供的预期输出?
-
我不使用数值 3 (1488) 而是使用每个列表的最后一个值来查找最大值。