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

问题描述 投票:0回答:1

我希望返回语句的值,如果它的计算结果为true。例如,

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

该函数也可以返回一个列表。因为空列表的计算结果为false,所以有更好的方法。我不想将值存储在if语句的范围之外。

python
1个回答
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
© www.soinside.com 2019 - 2024. All rights reserved.