【问题标题】:code2flow can't find graphviz in the pathcode2flow 在路径中找不到 graphviz
【发布时间】:2017-11-21 23:43:54
【问题描述】:

我正在尝试让some code 运行,但我触发了一个错误:

if not isInstalled('dot') and not isInstalled('dot.exe'):
    print "You must have graphviz (specifically dot) installed to run code2flow"
    sys.exit(1)

哪个调用

def isInstalled(program):
    def is_exe(fpath):
        return os.path.isfile(fpath) and os.access(fpath, os.X_OK)

    for path in os.environ["PATH"].split(os.pathsep):
        path = path.strip('"')
        exe_file = os.path.join(path, program)
        if is_exe(exe_file):
            return True

    return False

但我不明白为什么这会失败。我的路径包含 graphviz

> 回显 %PATH%

...;c:\Program Files (x86)\Graphviz2.38\bin;...

文件存在

> dir "c:\Program Files (x86)\Graphviz2.38\bin\dot.exe"

c:\Program Files (x86)\Graphviz2.38\bin 目录

04/14/2014 09:22 AM 7,680 dot.exe

对出了什么问题有任何想法吗?

【问题讨论】:

  • python -c 'import os; print(os.environ["PATH"])'python -c 'import os.path; print(os.path.isfile("c:\Program Files (x86)\Graphviz2.38\bin\dot.exe"))' 怎么样
  • 它是如何失败的?我尝试了您的代码,在导入“os”并测试“HelpPane.exe”(我在 windows- 文件夹中找到的这个 exe)后,我得到了您要寻找的“True”。
  • @AnthonySottile 翻转引号以便 Windows 可以首先处理它打印路径,其中确实包括 ;c:\Program Files (x86)\Graphviz2.38\bin;。第二个是False,我不知道为什么。
  • @am2 isInstalled('dot.exe') isFalse 尽管文件存在于路径上的目录中。
  • @Charles:当然,我只想在我的系统(未安装 dot.com)上测试您的代码。你的代码对我有用(使用另一个可执行文件)。如果我是你,我会添加一个“print(exe_file)”、一个“print(os.path.isfile(fpath))”和一个“print(os.access(fpath, os.X_OK))”来确保,不足为奇。并且也许我会尝试使用“exe”来确保“com”不是问题。

标签: python graphviz


【解决方案1】:

我也有这个错误。

我尝试运行命令:

sudo python setup.py install

现在好了。

我安装 code2flow 的方法是使用 pip install。

但是./ur/path/to/code2flow里面的代码是用python2写的。

因此!

【讨论】:

    猜你喜欢
    • 2021-04-06
    • 1970-01-01
    • 2021-08-22
    • 1970-01-01
    • 1970-01-01
    • 2019-12-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多