以下是我的代码的简化版本:
在TestClass.py文件中:
class TestClass:
def func1(self):
pass
def func2(self):
HERE I WANT TO CALL func1
在main.py文件中:
TestClass1 = TestClass()
TestClass1.func2()
最初,我尝试通过以下方式运行func1
(func2
在TestClass.py中):
TestClass.func2()
但在这种情况下,我收到以下错误消息:
TypeError: unbound method func1() must be called with TestClass instance as first argument (got str instance instead)
所以我理解这个问题的方式是它本身没有TestClass1
实例TestClass
,它只存在于主(调用)代码中。因此,为了解决这个问题,我在从main.pyTestClass
调用时传递了实例:func2
TestClass.func2(TestClass1)
我已经将它(类)添加到相应func2
的强制参数中。
结果,它似乎工作正常。但我想确保这是一种可以接受的方式。