【发布时间】:2023-03-07 07:06:02
【问题描述】:
我有一个方法__some_method,它可能返回一个参数、两个参数或任何数字。我想在另一个方法中调用这个方法并将返回值放入变量中,就像这样
var1, var2 ... varN = self.__some_method()
有没有什么方法可以做到这一点,在一个非常通用的设置中,它适用于任意数量的返回参数?
【问题讨论】:
-
使用神奇的dictionary来解决这个问题。
-
我考虑过数组,但我不确定它是否是解决我问题的最佳选择。我想知道是否还有其他方法可以工作。
-
返回一个元组。它将被解压缩到您的变量中。您必须小心,如果参数的数量与变量的数量不匹配,就会出现异常。数组在python中有一个很specific的意思,上面提到的通用数据结构是
list。 -
如果你有未知数量的返回值,为什么不使用元组/列表呢?
var = self.__some_method()(请注意,您几乎可以肯定不应该使用两个下划线,不确定您从哪里得到这个想法)。是什么让您不确定这是最佳选择?返回值代表什么?为什么不知道会有多少?如果没有上下文,只需使用一个列表,不要再浪费时间思考了。