[BangPypers] List compression imrpovement
vijay
vnbang2003 at yahoo.com
Wed Jan 9 10:39:47 CET 2013
Thanks Anand. This look good to me.
________________________________
From: Anand Chitipothu <anandology at gmail.com>
To: vijay <vnbang2003 at yahoo.com>; Bangalore Python Users Group - India <bangpypers at python.org>
Sent: Wednesday, 9 January 2013 1:43 PM
Subject: Re: [BangPypers] List compression imrpovement
On Wed, Jan 9, 2013 at 1:11 PM, vijay <vnbang2003 at yahoo.com> wrote:
> Hi,
> I want to know if there is any other better way for improving below list compression. I have to use list compression only to achieve it.
>
> say i have list a=[1, 4, 9, 12, 15, 21] expected result (4, 12), (9, 12, 15, 21)
>
> few solutions are
> 1) [filter(None, l) for l in zip(*[(x if x % 2 == 0 else None, x if x % 3 == 0 else None) for x in a])]
> 2) [y for y in a if bool(y%2==0)],[y for y in a if bool(y%3==0)]
>
> Any other better way to improve this.
How about this?
[[x for x in a if x%i == 0] for i in [2, 3]]
Anand
More information about the BangPypers
mailing list