filter a list of strings
Laura Creighton
lac at openend.se
Thu Dec 3 04:53:16 EST 2015
In a message of Thu, 03 Dec 2015 10:27:19 +0100, c.buhtz at posteo.jp writes:
>Thank you for your suggestion. This will help a lot.
>
>On 2015-12-03 08:32 Jussi Piitulainen <harvesting at is.invalid> wrote:
>> list = [ item for item in list
>> if ( 'Banana' not in item and
>> 'Car' not in item ) ]
>
>I often saw constructions like this
> x for x in y if ...
>But I don't understand that combination of the Python keywords (for,
>in, if) I allready know. It is to complex to imagine what there really
>happen.
>
>I understand this
> for x in y:
> if ...
>
>But what is about the 'x' in front of all that?
This is a list comprehension.
see: https://docs.python.org/2/tutorial/datastructures.html#list-comprehensions
But I would solve your problem like this:
things_I_do_not_want = ['Car', 'Banana', <add all of them here>]
things_I_want = []
for item in list_of_everything_I_started_with:
if item not in things_I_do_not_want:
things_I_want.append(item)
Laura
More information about the Python-list
mailing list