[Tutor] Comparing two lists
Vince Spicer
vince at vinces.ca
Thu Sep 16 20:49:51 CEST 2010
On Thu, Sep 16, 2010 at 12:27 PM, Michael Powe <michael at trollope.org> wrote:
> Hello,
>
> I have two lists.
>
> alist = ['label', 'guid']
>
> blist = ['column0label', 'column1label', 'dimension0guid',
> 'description', 'columnid']
>
> I want to iterate over blist and extract the items that match my
> substrings in alist; alternatively, throw out the items that aren't in
> alist (but, I've had bad experiences removing items from lists "in
> place," so I tend toward the "copy" motif.)
>
> In real life, blist column entries could have embedded column numbers
> from 0 to 19.
>
> I can do this with excrutiatingly painful 'for' loops. Looking for
> something more efficient and elegant.
>
> Thanks.
>
> mp
>
> --
> Michael Powe michael at trollope.org Naugatuck CT USA
>
> "The secret to strong security: less reliance on secrets."
> -- Whitfield Diffie
>
> _______________________________________________
> Tutor maillist - Tutor at python.org
> To unsubscribe or change subscription options:
> http://mail.python.org/mailman/listinfo/tutor
>
>
Michel,
One solution is to use list comprehensions.
newlist = [x for x in blist if [a for a in alist if a in x]]
This works, although there may be more efficient ways to accomplish this
Vince
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20100916/fb10c862/attachment.html>
More information about the Tutor
mailing list