[英]Check if R is installed from python
我有一個調用許多函數的python
代碼,這些函數之一需要安裝R
軟件才能正常運行。
我如何從python
內部檢查R
是否已安裝在系統中,以避免未調用該函數?
順便說一句,我正在運行一個Linux發行版(基礎操作系統,基於Ubuntu 12.04)
在子進程中使用dpkg -s
:
from subprocess import check_output
print check_output(["dpkg", "-s" , "r-base"])
或者, which
是@kay提示:
from subprocess import Popen, PIPE
proc = Popen(["which", "R"],stdout=PIPE,stderr=PIPE)
exit_code = proc.wait()
if exit_code == 0:
print ("Installed")
使用PIPE
您不會在輸出中看到/usr/bin/R
只需測試which R
的結果:
from subprocess import check_call, CalledProcessError
try:
check_call(['which', 'R'])
except CalledProcessError:
print 'Please install R!'
else:
print 'R is installed!'
這也將在* BSD(包括Mac OSX)上運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.