[Tutor] Sorting a list
bob gailer
bgailer at gmail.com
Thu May 14 20:22:36 CEST 2009
Lie Ryan wrote:
> Timo wrote:
>> Hello,
>>
>> I don't think this should be difficult, so maybe I look over it. But
>> I can't seem to find the solution.
>>
>> I have a list with one word and a couple of numbers. Now I want the
>> word to be kept in the first location and the numbers to be sorted.
>>
>> So this:
>> [4, 6, 'word', 3, 9]
>>
>> should be:
>>
>> ['word', 3, 4, 6, 9]
>>
>
> Why not:
> >>> sorted(lst, key=lambda x: (0, x) if isinstance(x, str) else (1, x))
> ['word', 3, 4, 6, 9]
Again in the relentless pursuit of terseness:
sorted(a, key=lambda x: (isinstance(x, int), x))
--
Bob Gailer
Chapel Hill NC
919-636-4239
More information about the Tutor
mailing list