2011-07-28 163 views
2

我想知道是否有一種方法,我可以從我的python代碼檢查,如果matlab存在系統上。到目前爲止,我唯一能想到的是:exists = os.system("matlab")然後解析command not found的存在。但我幾乎肯定會這樣做:蟒蛇檢查matlab安裝

  1. 啓動matlab以防系統上存在的情況。我不想要這個。
  2. 響應可能因我運行的系統而異?

那麼有沒有什麼辦法可以檢查從python系統上是否有可用的matlab安裝?

問候, 波格丹

回答

1

假設你的系統調用的作品,你可以檢查路徑matlab.exe這樣的:

import os 

def matlab_installed(): 
    for path in os.environ["PATH"].split(";"): 
     if os.path.isfile(os.path.join(path, "matlab.exe")): 
      return True 
    return False 

對於Unix,你必須改變分裂( 「;」)分裂(「:」)和「matlab.exe」到任何在Unix下調用matlab可執行文件。

+0

感謝您的意見。會試試看。 – Bogdan

+0

好的你的解決方案可以在Windows操作系統上運行。然而,在MacOS中,當終端中的echo $ PATH完成PATH時,os.environ [「PATH」]僅返回/ usr/bin:/ bin:/ usr/sbin:/ sbin:/ opt/local/bin: /opt/local/sbin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:....等 – Bogdan

+0

這是一個環境問題, os.environ [「PATH」]在我的fedora盒子上返回和echo $ PATH相同的結果。你怎麼稱呼python? – Jacob