Or you could use actual sets: >>> colors = set(['red', 'green', 'blue', 'orange', 'fuscia', 'black', 'white']) >>> subset = set(['red', 'green', 'blue', 'purple']) >>> subset.intersection(colors) set(['blue', 'green', 'red'])
Of course, this loses your ordering, but it's otherwise far easier to read than a list comprehension. -Chris On Fri, Oct 29, 2010 at 9:19 AM, Dan Ross <d...@rosspixelworks.com> wrote: > Indeed. That's awfully nice and concise. > > On Fri, 29 Oct 2010 09:14:06 -0700, Christopher Barker > <chris.bar...@noaa.gov> wrote: > > On 10/29/10 7:56 AM, Dan Ross wrote: > > > I've been trying to use more list comprehensions recently. > > > > ahh -- then you want something like: > > > > In [15]: colors = > ['red','green','blue','orange','fuchsia','black','white'] > > > > In [16]: subset = ['red','green','blue','purple'] > > > > In [17]: [c for c in colors if c in subset] > > > > Out[17]: ['red', 'green', 'blue'] > > > > > > (so much for one obvious way to do it!) > > > > -Chris > _______________________________________________ > Pythonmac-SIG maillist - Pythonmac-SIG@python.org > http://mail.python.org/mailman/listinfo/pythonmac-sig > unsubscribe: http://mail.python.org/mailman/options/Pythonmac-SIG >
_______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig unsubscribe: http://mail.python.org/mailman/options/Pythonmac-SIG