Can this Python list comprehension expression be simplified?

list-comprehension, python

Solution

Creating a new string is always going to be more expensive than scanning it. `x.isspace()` will return after the first not space character is encountered

tags = [x.strip() for x in input.split(',') if x and not x.isspace()]

Problem

``` input = "foo ,,bar ,baz," tags = [x.strip() for x in input.split(',') if len(x.strip()) > 0] ``` Desired output is obviously a list with no empty strings in it. The question is in the spirit of micro optimisation; is there a way to not `strip()` the candidate `x` twice, ie once for the test and once for the append? To rephrase, can you produce a value in the expressions that can be appended to the list without doing the work twice?

Original source