2014-09-02 44 views
0

我試圖在分佈式計算系統上導入mpi4py。不過,我的站點包目錄中有兩個模塊名稱。如何在站點包中多次導入正確的模塊名稱

站點包/

  • mpi4py

  • MPICH2/mpi4py

這是mpi4py模塊的MPICH2版本,我想導入;不過,我只能導入其他版本。

我已經嘗試將/usr/lib64/python2.6/site-packages/mpich2/mpi4py添加到PYTHONPATH,我試過sys.path.append('/usr/lib64/python2.6/site-packages/mpich2/mpi4py')。但是,我最終每次都得到mpi4py的非mpich2版本。

我也試過import mpich2.mpi4py,但那不行。

有什麼想法/建議嗎?謝謝。

+0

你從哪裏執行程序?也許*在python代碼中*嘗試明確地將當前工作目錄設置爲「site-package」目錄,直接在'import mpich2.mpi4py'前 – flakes 2014-09-02 17:47:21

+0

嘗試'sys.path.insert(0,...)' - 追加到結束意味着仍然先搜索現有路徑。 – tdelaney 2014-09-02 18:07:15

+0

mpich2是一個python包(它有一個__init__.py)嗎?你知道它來自哪裏嗎? – tdelaney 2014-09-02 18:14:04

回答

0

嘗試把目錄中的sys.path開始:

sys.path[0:0] = ['/usr/lib64/python2.6/site-packages/mpich2'] 
import mpi4py 
+0

Doh。我已經更新了我的答案。 – 2014-09-02 20:08:07

相關問題