【发布时间】:2016-09-04 22:29:12
【问题描述】:
我想写一个这样的python函数:
def foo():
if x:
return y
else:
return y, z
有可能吗?如果可能的话,我如何检测返回值的数量?
【问题讨论】:
-
返回一个元组还是一个列表?
-
是的,我知道,但我想知道是否可以这样做?
-
这样做的目的是什么?之后您想如何处理这些数据?
-
有可能,你可以检查返回值是否为
tuple类型,但这在编程中是一种非常糟糕的做法。考虑使用return (y,)之类的方法返回一致数量的值,或者至少总是返回一个元组 -
您可以在返回值上尝试
len,但这可能没有用。如果一个函数返回一个列表或两个列表的元组,那么len有用吗?顺便说一句,你说你知道可以返回一个元组,但是return y, z正在返回一个元组,那么为什么要问这个问题呢?
标签: python function output overloading