我有一个奇怪的问题。我有一个应该返回列表的函数。我使用一个名为' common'的对象来调用该函数。并发现它总是返回None(common.reset_this)。但是当我在类之外定义这个函数时,它会返回它应该返回的内容。 我在这里有什么遗失。
class something_else():
//
...
//
def reset_this(self,unit = 0):
with self.__reset_lock:
status = self.get_status(unit)
return status
答案 0 :(得分:4)
假设它不是一个错字,你错过了方法的自我论证,你需要:
class something_else():
#
# ...
#
def reset_this(self, unit = 0):
with common.__reset_lock:
status = common.get_status(unit)
return status
没有它,单位会传递自我对象(而不是0),因为python并不关心你所谓的,第一个参数总是" self" object(调用该方法的对象)。