2017-02-25 20 views
1

我正在運行的程序,它利用在Fedora 20.Python的終端呼叫不會加載適當的庫

所述的openmpi庫當我從終端運行命令:

../bin/boxfit ../settings/boxfitsettings.txt | tee boxoutput.log 

它是成功的。

當我通過Python控制檯運行它返回一個錯誤:

​​

同樣的錯誤結果與

subprocess.call(args,shell=True) 

我有路徑設定相同的,所以它應該有訪問相同的庫。是否有內部Python功能需要注意解決此錯誤?或者,它可能是程序庫不能與Python交談的程序編譯錯誤?

回答

0

看起來像是在Python自己的目錄中檢查這個文件,而不是從你當前的目錄檢查這個文件。

你可以做的是例如

path = os.path.abspath("..") 
os.system('%s/bin/boxfit %s/settings/boxfitsettings2.txt | tee boxoutput.log' % (path, path)) 

要得到您身在何處,然後格式化成你的命令

+0

注意'subprocess.call(參數,殼=真)的路徑'比'os.system'好... –

+0

這真的取決於。另外,我會爲此使用Popen。 –