2011-02-15 62 views
0

我想從我的模塊中調用一個二進制程序中運行命令。我有問題找到二進制的子進程。子,POPEN到模塊

,所以我有

myModule/ 
-classWrappingBinary.py 
-binary_file.out 

和classWrappingBinary.py我有類似的財產以後

sbp.Popen(['./binary_file.out'] 

它不工作。那麼我怎樣才能成功地調用Popen命令呢?我要去通過導入模塊一樣使用它,

import myModule 
a = myModule.classWrappingBinary.MyClass() 

回答

0

你可以看一下變量__file__,並從中提取的目錄信息。最可靠的方法是

name = os.path.join(os.path.dirname(__file__) or ".", "binary_file.out") 
subprocess.Popen(name)