Can I optionally include one element in a list without an else statement in python? -
i know can in python:
>>> conditional = false >>> x = [1 if conditional else 2, 3, 4] [ 2, 3, 4 ] but how this?
>>> conditional = false >>> x = [1 if conditional, 3, 4] [ 3, 4 ] that is, don't want substitute 1 number. want omit if conditional false.
use concatenation:
x = ([1] if conditional else []) + [3, 4] in other words, generate sublist either has optional element in it, or empty.
demo:
>>> conditional = false >>> ([1] if conditional else []) + [3, 4] [3, 4] >>> conditional = true >>> ([1] if conditional else []) + [3, 4] [1, 3, 4] this concept works more elements too, of course:
x = ([1, 2, 3] if conditional else []) + [4, 5, 6]
Comments
Post a Comment