import itertools
l = [['a1', 2], ['a1', 3], ['a1', 1], ['b1', 4], ['b1', 2], ['b1', 6], [
    'c1', 2]]
print([max(v) for _, v in itertools.groupby(l, lambda x: x[0])])
Python – сравнить список списков и выбрать наибольшее значение