creating an artificial "last element" in sort list

Demian Brecht demianbrecht at gmail.com
Fri Sep 28 20:19:22 EDT 2012


Maybe

l = filter(a, lambda v: v == a[-1])
sorted(a[:-len(l)]) + l

?

On Fri, Sep 28, 2012 at 4:51 PM, dave <davidreynon at gmail.com> wrote:

> more clearer, this is a more realistic use case:
>
> ['awefawef', 'awefawfsf', 'awefsdf', 'zzzzzzzzzzzzzz', 'zzzzzzzzzzzzzz',
> 'zzzzzzzzzzzzzz']
>
> and the quantity of ''zzzzzzzzzzzzzz'' would be dynamic.
>
> On Friday, September 28, 2012 4:46:15 PM UTC-7, Ian wrote:
>
> >
> > > a = ['a', 'b', x]
> >
> > >
> >
> > > b = sorted(a)
> >
> > >
> >
> > > What does x need to be to always be last on an ascending sort no
> matter what 'a' and 'b' are.... within reason... I am expecting 'a' and 'b'
> will be not longer than 10 char's long.... I tried making x =
> 'zzzzzzzzzzzzzzzz' and believe it or not, this appears FIRST on the sort!!!
> >
> >
> >
> > It appears last when I run the code.
> >
> >
> >
> > To answer your question, though, if you want to force x to be last,
> >
> > then I suggest removing it from the list and then appending it to the
> >
> > end.
> --
> http://mail.python.org/mailman/listinfo/python-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20120928/55beb9e3/attachment.html>


More information about the Python-list mailing list