2012-04-22 14 views
2

我是Python編程的新手,所以請耐心等待我的新生問題。Python:如何使用numpy裏面的函數?

如果我們要使用內部numpy的某些功能,比如說func,我們需要只是進口numpy的一次,然後調用該函數如下:

import numpy 
np.func 

或者說,我們還需要在調用任何函數之前導入numpy的特定子模塊?謝謝。

回答

2

如果你想使用linalg你要做的:

numpy.linalg 

例如,如果要計算x的決定,你會怎麼做

import numpy 

x = numpy.array([[1,2],[5,7]]) 
det_x = numpy.linalg.det(x) 

#or 

import numpy as np 

x = np.array([[1,2],[5,7]]) 
det_x = np.linalg.det(x) 
+0

謝謝。你知道有什麼好的資源來了解numpy和scipy中的子模塊嗎? – Pupil 2012-04-22 02:05:44

+0

我發現「Numpy for Matlab用戶」類型的手冊非常好,尤其是開始。即使我不是一個matlab用戶,他們幫助了我。 – Akavall 2012-04-22 02:09:45

3

差不多,如果你想使用numpynp你必須導入它是這樣的:

import numpy as np 

其他可以使用的功能類似。

+0

如果我寫'import numpy',那麼我必須w rite'numpy.func'? – Pupil 2012-04-22 01:41:36

+0

@S_H:沒錯。 – orlp 2012-04-22 01:45:41

3

一樣存在於之間的其他所有模塊,您使用的名稱將其導入爲。

import numpy 
numpy.func 

...

import numpy as np 
np.func 
+1

公平地說,在主模塊的'__init__'中沒有包含特定子模塊的模塊很多。我猜測OP的問題來自「scipy」。 'scipy'的'__init__'基本上只是導入'numpy'。所有'scipy'的功能都在你必須明確導入的子模塊中。 – 2012-04-22 01:51:41

+0

@Joe:你得到你導入的東西。這並沒有改變。 – 2012-04-22 01:52:59

+1

不,它沒有,但如果OP使用'numpy',他們可能也使用'scipy'。爲什麼會有這麼多類似於'import scipy.ndimage'的代碼,以及爲什麼你不能只導入scipy然後訪問'scipy.ndimage',這很常見。或者,也許我只是讀了太多的問題。 – 2012-04-22 01:56:10