Mercurial > hg > numerics
view numerics/sort.py @ 134:b6242f916cef
stub; needs a test
author | Jeff Hammel <k0scist@gmail.com> |
---|---|
date | Tue, 17 Mar 2015 11:38:43 -0700 |
parents | |
children | 12649a88545c |
line wrap: on
line source
#!/usr/bin/env python # -*- coding: utf-8 -*- """ sort columned data """ # module globals __all__ = ['Sorter'] class Sorter(object): """ sorter for columned data """ def __init__(self, *indices): """ indices -- 2-tuple of (index, forward) where forward should be True or False """ self.indices = indices def __call__(self, rows): return sorted(rows, key=self.key) def key(self, row): retval = [] for index, forward in self.indices: value = row[index] if not forward: value = -value retval.append(value) return tuple(retval)