sort help

Larry Martell larry.martell at gmail.com
Wed Sep 23 14:21:34 CEST 2015


On Tue, Sep 22, 2015 at 6:55 PM, Chris Angelico <rosuav at gmail.com> wrote:
> On Wed, Sep 23, 2015 at 8:42 AM, Larry Martell <larry.martell at gmail.com> wrote:
>> I currently have 3 lists of lists and I sort them based on a common
>> field into a single list like this:
>>
>>         def GetObjKey(a):
>>             return a[2]
>>
>>         sorted(a + b + c, key=GetObjKey)
>>
>> Which works just fine.
>>
>> But now, I need to have just the first list (a) also sub sorted by
>> another field and I can't quite figure out how to do this.
>
> Have you tried simply sorting a by the other field prior to doing your
> merge-and-sort? The Python list.sort() method is guaranteed to be
> stable. I can't find a comparable guarantee for sorted(), but worst
> case, you should be able to do your list merge, and then explicitly
> name it and sort it.

Thanks to everyone for the replied. I ended up just presorting he
first list, then merging and sorting all 3. Very simple. Not sure why
I didn't see that. Probably comes from working 75 hours/week.


More information about the Python-list mailing list