我想在它自己內部創建類實例。我試圖把它通過這種方式:如何在該類方法內創建類實例?
class matrix:
(...)
def det(self):
(...)
m = self(sz-1, sz-1)
(...)
(...)
但我得到的錯誤:
m = self(sz-1, sz-1)
AttributeError: matrix instance has no
__call__
method
所以,我想通過這種方式來做到這一點:
class matrix:
(...)
def det(self):
(...)
m = matrix(sz-1, sz-1)
(...)
(...)
,我得到了另一個錯誤:
m = matrix(sz-1, sz-1)
NameError: global name 'matrix' is not defined
當然矩陣不是全局的cla SS。我不知道如何解決這個問題。
最後一個例子對我的作品。 – Javier 2010-01-06 18:45:35
就像你現在一樣,'m'將是一個局部變量,而不是一個實例變量,所以當det()方法返回時它將消失。這可能適合你正在做的事情,但是當你說你想要一個「類內部實例」時,聽起來你可能希望m是一個實例變量,在這種情況下,你需要將它稱爲「self」。 m「 – MatrixFrog 2010-01-06 18:46:26
你使用的是什麼版本的Python? – MatrixFrog 2010-01-06 18:46:58