如果值在python中为true,则返回值

时间:2019-04-25 12:39:51

标签: python

如果语句的值为真,我想返回该语句的值。例如,

if f():
   return f()
elif g():
   return g()

该函数可能还会返回一个列表。由于空列表的计算结果为false,因此有更好的方法吗?我不想将值存储在if语句的范围之外。

1 个答案:

答案 0 :(得分:3)

当前您只能执行以下操作:

out = f()
if out: return out
out = g()
if out: return out

但是也许您在想的是类似Python 3.8中的(引起争议的)assignment expressions之类的东西。这样您就可以做到:

if out := f():
    return out
elif out := g():
    return out