On Tue, May 12, 2009 at 5:02 PM, MRAB <goo...@mrabarnett.plus.com> wrote: > John Machin wrote: >> >> MRAB <google <at> mrabarnett.plus.com> writes: >>> >>> Sort the list, passing a function as the 'key' argument. The function >>> should return an integer for the month, eg 0 for 'jan', 1 for 'feb'. If >>> you want to have a different start month then add >> >> and if you don't like what that produces, try subtract :-) >> > Oops! > >>> the appropriate >>> integer for that month (eg 0 for 'jan', 1 for 'feb') and then modulo 12 >>> to make it wrap around (there are only 12 months in a year), returning >>> the result. >> > Actually, subtract the start month, add 12, and then modulo 12.
Both on my Linux and my Windows pythons, modulos of negative numbers are properly taken, returning always the correct positive number between 0 and 11. I seem to recall, from my distant past, that Perl took pride on this being a language feature. Anyone knows if that is not the case with python, and so not adding 12 before taking the modulo could result in wrong results in some implementations? > -- > http://mail.python.org/mailman/listinfo/python-list > -- (\__/) ( O.o) ( > <) Este es Conejo. Copia a Conejo en tu firma y ayúdale en sus planes de dominación mundial. -- http://mail.python.org/mailman/listinfo/python-list