我知道在python中,您只需执行
就可以返回多个值return a,b,c
,调用者将获得这些值的元组。在这种情况下,您只需检查元组的长度即可知道返回了多少个值。
ret = f()
len(ret)
但是,当返回单个值时,不会发生这种换行,您可以直接获取返回的值。
在这种情况下,如果返回的值没有长度,或者如果有,(例如,返回长度为10的数组),尝试调用len
将引发TypeError
会得出错误的结论-返回长度为10的单个数组,而不是10个单独的值。
所以我的问题是:处理这些极端情况的最佳方法是什么?而且,甚至可以区分这两个:
def f():
return 1,2,3
def f():
ret = (1,2,3)
return ret