Antoon Pardon wrote, on January 09, 2017 2:35 AM > If I understand correctly you want something like: > > records.sort(key = lamda rec: rec.xx) > > AKA > > from operator import attrgetter > records.sort(key = attrgetter('xx')) > > or maybe: > > records.sort(key = lambda rec: (rec.xx,) + tuple(rec)) > > -- > Antoon Pardon
I think you are replying to my question about sorting a namedtuple, in this case it's called 'records'. I think your suggestion works for lists and tuples, and probably dictionaries. But namedtuples doesn't have a sort function. >>> from collections import namedtuple >>> dir(namedtuple) ['__annotations__', '__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__get__', '__getattribute__', '__globals__', '__gt__', '__hash__', '__init__', '__kwdefaults__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__'] so nothing with records.sort will work. :( Deborah -- https://mail.python.org/mailman/listinfo/python-list