[Tutor] Logical Sorting
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@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Logical Sorting
On 7/7/06, Evan Klitzke [EMAIL PROTECTED] wrote: Hi, I am trying to sort a list of directories that correspond to kernel sources under /usr/src/linux. Err, this is under /usr/src... not that it is really pertinent to my question. -- Evan Klitzke ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
[Tutor] Variables don't change when altered within a loop?
Hi, I just started picking up python yesterday, and have already come across something that has me stumped. I want some code that does this: a = foo(a) b = foo(b) c = foo(c) So I try to do this with a for loop, like so: for i in [a, b, c]: i = foo(i) print i # make sure that it worked correctly So far, so good. The problem is that outside the loop, the values aren't changed. For example, print [a, b, c] # outside the loop; the values never actually changed! What is going on? Why aren't the values of my variables changing when I change them inside a loop like this? -- Evan ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor