我需要從一個方法處理一堆類似但唯一調用的函數。例如(也許不是一個很好的例子)Python,返回/處理來自方法的複雜數據的最佳方式
class Util(object):
def method1(self):
return "method1", [1,2,3]
def method2(self):
return "method2", {"1":4, "2":5, "3":6}
def method3(self):
return [1,2,3], "method3", {"1":4, "2":5, "3":6}
def call_method(self, method_func):
if method_func.__name__ == "method1":
(name, dict_values) = self.method_func()
if method_func.__name__ == "method2":
(name, list_values) = self.method_func()
if method_func.__name__ == "method3":
(list_values, name, dict_values) = self.method_func()
# How best to manage a return for 3 optional, but not inter-dependent values?
return name, dict_values, list_values
if __name__ = "__main__":
u = Util()
(name, dict_values, list_values) = u.call_method(Util.method1)
call_method()返回是我想要在這裏可視化。我有一堆我需要做的專屬子通話,我需要將它們按摩到可以返回的東西。
將它們填充到Util類成員變量中會更容易嗎?而實現u.call_method()的人只需要知道要查找什麼?
在任何人首先抱怨設計之前,它不是我的。我只需要公開一個一致的API並且有興趣聽到關於如何處理這種回報的意見。這是不容易規範化的,雖然失蹤的追蹤返回值將通過運行時,但領先的不會。
任何提示將是偉大的!謝謝。
'return name,dict_values,list_values'有什麼問題?我不明白你有什麼問題? –