我们可以在列表理解中使用 elif
吗?
例子:
l = [1, 2, 3, 4, 5]
for values in l:
if values==1:
print 'yes'
elif values==2:
print 'no'
else:
print 'idle'
我们可以在列表理解中包含 elif
,以类似于上面的代码的方式吗?
例如,这样的答案:
['yes', 'no', 'idle', 'idle', 'idle']
到目前为止,我只在列表理解中使用了 if
和 else
。
最佳答案
Python 的 conditional expressions正是为这种用例设计的:
>>> l = [1, 2, 3, 4, 5]
>>> ['yes' if v == 1 else 'no' if v == 2 else 'idle' for v in l]
['yes', 'no', 'idle', 'idle', 'idle']
关于python - 列表理解条件中的 `elif`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9987483/