如何从Python运行"dot"作为命令?

Pie*_*oni 5 python macos path dot graphviz

我在Mac OSX Leopard上使用Python.

我试图从Python运行程序'dot'(Graphviz的一部分):

# -*- coding: utf-8 -*-
import os

print os.environ['PATH']
print os.system("ls >> a.txt")
print os.system("dot -o9.png -Tpng ./6.dot")
Run Code Online (Sandbox Code Playgroud)

命令"ls"只是为了确保python在正确的目录中.它是.我得到的结果是:

/ usr/bin:/ bin:/ usr/sbin:/ sbin 0 32512

我的理解是32512错误意味着python找不到文件,因为文件6.dot就在那里(如果我从终端运行"dot -o9.png -Tpng ./6.dot"我收到没有错误,和9.png得到),我假设Python找不到点文件.

我可能需要将点文件添加到路径中.但我不知道它在哪里.如果我跑:

whereis dot
Run Code Online (Sandbox Code Playgroud)

我没有回答.

我怎样才能找到点可执行文件?
或者,我可以将Python程序作为Python内部的命令运行吗?

laa*_*lto 10

whereis找到手册页,which找到二进制文件.所以试试吧which dot.


Pet*_*and 2

您应该更改 PATH 行,使其包含包含dot. 该目录是/usr/local/bin,没有/dot.