我有一个功能:返回不同数量的实体
def foo():
try:
a = bar1()
b = bar2()
except Exception as e:
logging.exception(e)
return
return a, b
正如你可以看到有可能会返回不同数目的值。 根据进一步,我应该仔细检查它:
if foo():
x, y = foo()
但似乎有一些开销。 这样的做法好吗?任何替代品?
对于两个变量都应该返回None
以阻止双重执行?
我会保持返回一致。如果你的方法被期望* always *返回两个值,并且你正在捕获一个异常并且仍然期望返回* something *,那么我会同意返回'None,None'。 – idjaw
或'x = foo();如果x:a,b = x' – khelwood