[Tutor] Logical Sorting
Marc Poulin
marc_a_poulin at yahoo.com
Fri Jul 7 21:52:56 CEST 2006
I did a Google search for "python numeric sort" and
found
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/135435
It seems to do what you want.
Marc
--- Evan Klitzke <eklitzke at gmail.com> wrote:
> Hi,
>
> I am trying to sort a list of directories that
> correspond to kernel
> sources under /usr/src/linux. I wrote some code
> that gets a list like
> this:
> ['linux-2.6.9-gentoo-r4',
> 'linux-2.6.16-gentoo-r11/',
> 'linux-2.6.16-gentoo-r7/']
>
> When I sort the list, I want it to go from oldest
> (lowest version) to
> newest, so the sorted list should look like this:
> ['linux-2.6.9-gentoo-r4', 'linux-2.6.16-gentoo-r7/',
> 'linux-2.6.16-gentoo-r11/']
>
> The problem is that since the built in string
> comparisons compare
> character by character, so the sort puts 2.6.16
> before 2.6.9, and -r11
> before -r7. This is obviously not what I want. My
> question is: are
> there any modules or built in methods that will do a
> logical sort on a
> list like this, and sort it the way I want, or will
> I have to write my
> own sorting function?
>
> -- Evan Klitzke
>
> P.S. I know that the simplest way is just to use ls
> to sort by time,
> but it is not necessarily true that older kernel
> versions have an
> older time stamp :-)
> _______________________________________________
> Tutor maillist - Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
More information about the Tutor
mailing list