假设我有一个函数:
def my_func():
return 1,2
我想要什么:如果我像这样调用函数:
a = my_func()
我希望它仅返回第一个输出参数,即 1
;
如果我打电话a,b = my_func()
它返回两者 - a=1
和b=2
.
这个任务是关于向后兼容性的:当我只使用 a = my_func()
时,我已经有很多脚本了。 ,现在我想添加额外的功能。但现在a
实际上是一个元组,由两个值组成: (1,2)
可能吗?
最佳答案
可以使用默认值的参数,只需在新版本执行中添加即可。
def my_func(new_version=False):
return (1, 2) if new_version else 1
a = my_func() # backwards compatible
print("should be 1", a)
a = my_func(new_version=True) # new version available
print("should be (1, 2)", a)
关于python - 函数默认仅返回第一个输出值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49859183/