2
我想寫M.det()
,而不是numpy.linalg.det(M)
, 所以我這樣做:添加`numpy.linalg.det`的方法`numpy.matrix`
numpy.matrix.det = numpy.linalg.det
和它的工作。
對此訴訟有什麼要說的嗎?
實施例:
import numpy as np
np.matrix.det = np.linalg.det
M = np.matrix([[1,2],[3,4]])
print M.det()
正確的輸出:-2.0
我認爲還有一點:'np.linalg.det'帶有一個參數,如果使它成爲'np.matrix'的一個方法,它就被用作「self」。如果有多個參數或根本沒有參數,我認爲它不會工作。 – bmu
@bmu:它可以與多個參數一起工作,然後第一個是它被調用的實例,其餘的像往常一樣傳遞。將一個零參數函數作爲一個實例方法是沒有意義的,因爲它不會在任何東西上調用*。 –
你是對的,但這就是我的意思:它或多或少是隨機的,它與這個函數一起工作,因爲它需要一個參數。只是想提一提,沒有問題與你的答案。 – bmu