2016-05-18 30 views
1

我有一個自定義的定時器裝飾器,我用一堆函數來包裝我的程序的各個方面。我想將其應用於Numpy ndarrays的轉置描述符。我已經試過這樣:如何將裝飾器應用於導入的描述符?

np.ndarray.T = Timer('computation')(np.ndarray.T) 

,但我得到這樣的結果:

TypeError: can't set attributes of built-in/extension type 'numpy.ndarray' 

有沒有辦法做到這一點還是應該我只是在我的代碼變調功能取代.T?

+0

它不是一個屬性,它是一個描述符。 – wim

+0

不是一個看起來像屬性(即array.T)的描述符嗎? –

+1

是的,屬性實現使用描述符協議。但並非所有描述符都是屬性。 – wim

回答

0

查看forbiddenfruit模塊,如果你確實想這樣做,但顧名思義,你應該避免它。

相關問題