List Question

Paul McGuire ptmcg at austin.rr.com
Tue Oct 2 18:09:16 EDT 2007


On Oct 2, 4:20 pm, Paul Hankin <paul.han... at gmail.com> wrote:
> On Oct 2, 10:06 pm, brad <byte8b... at gmail.com> wrote:
>
> > How is this expressed in Python?
>
> > If x is in y more than three times:
> >      print x
>
> > y is a Python list.
>
> Simple and readable:
> if len([a for a in y if x == a]) > 3:
>     print x
>
> Or the slightly-too-flashy version:
> if sum(1 for a in y if x == a) > 3:
>     print x
>
> --
> Paul Hankin

As long as you are eschewing count for sum, don't forget that true is
1 and false is 0:

if sum(x==a for a in y) > 3:
    print x

-- Paul




More information about the Python-list mailing list