一尘不染

Python三元运算符

python

是否可以在Python中一行执行此操作?

if <condition>:
    myList.append('myString')

我已经尝试过三元运算符:

myList.append('myString' if <condition>)

但是我的IDE(MyEclipse)不喜欢它,没有一个else


阅读 135

收藏
2020-12-20

共1个答案

一尘不染

是的,您可以这样做:

<condition> and myList.append('myString')

如果<condition>为假,则短路将开始,并且右侧将不被评估。如果<condition>为true,则将评估右侧并添加元素。

我只是指出,执行上述操作是完全非Python的,无论如何,最好编写此代码:

if <condition>: myList.append('myString')

示范:

>>> myList = []
>>> False and myList.append('myString')
False
>>> myList
[]
>>> True and myList.append('myString')
>>> myList
['myString']
2020-12-20