pab*_*blo 7 python class instance
我想在自己内部创建类实例.我试着通过这种方式:
class matrix:
(...)
def det(self):
(...)
m = self(sz-1, sz-1)
(...)
(...)
Run Code Online (Sandbox Code Playgroud)
但是我得到了错误:
Run Code Online (Sandbox Code Playgroud)m = self(sz-1, sz-1)AttributeError:矩阵实例没有
__call__方法
所以,我试着这样做:
class matrix:
(...)
def det(self):
(...)
m = matrix(sz-1, sz-1)
(...)
(...)
Run Code Online (Sandbox Code Playgroud)
我又得到了一个错误:
Run Code Online (Sandbox Code Playgroud)m = matrix(sz-1, sz-1)NameError:未定义全局名称"matrix"
当然矩阵不是全局类.我不知道如何解决这个问题.
Dan*_*man 12
m = self.__class__(sz-1, sz-1)
Run Code Online (Sandbox Code Playgroud)
要么
m = type(self)(sz-1, sz-1)
Run Code Online (Sandbox Code Playgroud)