我知道這個問題已被多次詢問,我讀了多個試圖解決這個問題的問題。但是,這些實際上都沒有工作。在Python中運行python腳本
我有一個Python腳本,我從以下網站下載:https://github.com/endrebak/kg
我試圖從內部蟒蛇運行下面的命令。它的工作原理,當我直接從終端上運行,但拋出一個錯誤,當我從裏面蟒蛇運行:
/usr/packages/kg-master/bin/kg --mergecol=0 --noheader --genes --definition --species=hsa <(echo 01200)
使用下面的代碼:
pathwayID = 01200
cmd="/usr/packages/kg-master/bin/kg --mergecol=0 --noheader --genes --definition --species=hsa <(echo {})".format(pathwayID)
tmp = os.popen(cmd).read()
不過,我發現了以下錯誤:
sh: -c: line 0: syntax error near unexpected token `('
sh: -c: line 0: `/usr/packages/kg-master/bin/kg --mergecol=0 --noheader --genes --definition --species=hsa <(echo 05200)'
我試過多種建議,比如調用腳本之前加入python
cmd="python /usr/packages/kg-master/bin/kg --mergecol=0 --noheader --genes --definition --species=hsa <(echo {})".format(pathwayID)
另一項建議是使用:
subprocess.call(['/usr/packages/kg-master/bin/kg', "--mergecol=0","--noheader","--genes","--definition","--species=hsa <(echo '01200')"])
該解決方案是最接近由於執行腳本實際問題的解決。但是,似乎參數沒有正確傳遞,我不知道爲什麼。
任何幫助,將不勝感激。
這實際上解決了這個問題。謝謝。 – ifreak