Pythonic way of saying 'at least one of a, b, or c is in some_list'

John Posner jjposner at optimum.net
Thu Oct 28 12:23:41 EDT 2010


On 10/28/2010 12:16 PM, cbrown at cbrownsystems.com wrote:
> It's clear but tedious to write:
>
> if 'monday" in days_off or "tuesday" in days_off:
>      doSomething
>
> I currently am tending to write:
>
> if any([d for d in ['monday', 'tuesday'] if d in days_off]):
>      doSomething
>
> Is there a better pythonic idiom for this situation?
>

Clunky, but it might prompt you to think of a better idea: convert the 
lists to sets, and take their intersection.

-John






More information about the Python-list mailing list