如何在该类方法中创建类实例?

pab*_*blo 7 python class instance

我想在自己内部创建类实例.我试着通过这种方式:

class matrix:
    (...)
    def det(self):
        (...)
        m = self(sz-1, sz-1)
        (...)
    (...)
Run Code Online (Sandbox Code Playgroud)

但是我得到了错误:

m = self(sz-1, sz-1)
Run Code Online (Sandbox Code Playgroud)

AttributeError:矩阵实例没有__call__方法

所以,我试着这样做:

class matrix:
    (...)
    def det(self):
        (...)
        m = matrix(sz-1, sz-1)
        (...)
    (...)
Run Code Online (Sandbox Code Playgroud)

我又得到了一个错误:

m = matrix(sz-1, sz-1)
Run Code Online (Sandbox Code Playgroud)

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)