[Tutor] Comparing two lists
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:
> 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.
> 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:
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
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Tutor