1

可能重复:
测试 Python 中是否存在可执行文件?

是否有python函数可以让我检测计算机中是否安装了程序。我有一个运行 .exe 的程序,该部分适用于 Windows,但要在 linux 中运行它,你需要 wine,所以我需要一种方法让 python 函数检测 wine。

4

1 回答 1

1

您可以使用函数来获取在环境变量os.get_exec_path()中设置的目录列表。PATH如果您要查找的可执行文件不存在于这些目录中,则假定该程序未安装是正确的。

截断代码以确定是否安装了 Wine,然后将如下所示:

import os
winePath = None
for directory in os.get_exec_path():
    testWinePath = os.path.join(directory, "wine")
    if os.path.exists(testWinePath) and os.access(testWinePath, os.R_OK | os.X_OK):
        winePath = executablePath
        break

如果安装了 Wine,则其可执行文件 ( wine) 的路径将在winePath变量中;如果没有找到winePathNone。该代码还检查文件是否具有正确的读取和执行权限。

os.get_exec_path()Python 3.2 开始可用。在旧版本中,您可以os.environ["PATH"].split(":")改用。

于 2013-01-16T22:15:02.023 回答