En god løsning ville være at gemme dem i en ordbog:
>>> t = ({"a":2}, {"a":2}, {"a":3})
>>> import collections
>>> d = collections.defaultdict(list)
>>> for i in t:
... d[i['a']].append(i)
...
Nu er dette åbenbart ikke, hvad du ønsker, men det er bedre end at oprette listen over lister inde i en løkke direkte med hensyn til hastighed, også en ordbog ser ud til at passe bedre til denne slags data. Dette kan også nemt konverteres til hvad du vil:
>>> [k for c,k in d.items()]
[[{'a': 2}, {'a': 2}], [{'a': 3}]]
Hvis hastigheden er kritisk, kan du sortere db-resultaterne efter dato, og i så fald kan du få en bedre algoritme.