É mais sobre sintaxe de compreensão da lista python. Eu tenho uma compreensão de lista que produz lista de números ímpares de um determinado intervalo:
[x for x in range(1, 10) if x % 2]
Isso cria um filtro - eu tenho uma lista de fontes, onde removo números pares ( if x % 2
). Eu gostaria de usar algo como se-então-outro aqui. O código a seguir falha:
>>> [x for x in range(1, 10) if x % 2 else x * 100]
File "<stdin>", line 1
[x for x in range(1, 10) if x % 2 else x * 100]
^
SyntaxError: invalid syntax
Há uma expressão python como if-else:
1 if 0 is 0 else 3
Como usá-lo dentro de uma compreensão de lista?
()
vez de[]
.