0

最大値を持つタプルのみがリストされるように、タプルの特定のリストをサニタイズする方法。

mytup = [('a',2),('a',6),('b',4),('a',4),('b',10),('c',4),('c',6),('c',8),('d',12),('d',10)]

結果

[('a',6), ('b', 10), ('c', 8), ('d', 12)]
4

3 に答える 3

0

Itertools はあなたの友人、1 行のソリューションです。

from itertools import groupby
print [ max(g) for _, g in groupby(sorted(mytup), lambda x: x[0] )]

結果:

[('a', 6), ('b', 10), ('c', 8), ('d', 12)]
于 2013-06-13T16:31:48.040 に答える