python - pydot 和 graphviz 错误 : Couldn't import dot_parser, 无法加载点文件

标签 python python-2.7 graphviz pydot

当我用 pydot 运行一个非常简单的代码时

import pydot
graph = pydot.Dot(graph_type='graph')

for i in range(3):

  edge = pydot.Edge("king", "lord%d" % i)
  graph.add_edge(edge)

vassal_num = 0
for i in range(3):
  for j in range(2):
    edge = pydot.Edge("lord%d" % i, "vassal%d" % vassal_num)
    graph.add_edge(edge)
    vassal_num += 1

graph.write_png('example1_graph.png')

它会打印出错误信息:

Couldn't import dot_parser, loading of dot files will not be possible.

我正在使用 python 2.7.3

最佳答案

回答 pydot >= 1.1 :

(上游)pydot 的不兼容已由 6dff94b3f1 修复,因此 pydot >= 1.1将是 compatible with pyparsing >= 1.5.7 .


答案适用于pydot <= 1.0.28 :

对于遇到此问题的任何其他人,这是由于 pyparsing 从 1.x 到 2.x 版本的变化。 要使用 pip 安装 pydot,首先安装旧版本的 pyparsing:

pip install pyparsing==1.5.7
pip install pydot==1.0.28

如果您没有安装 pyparsing使用 pip , 但改为使用 setup.py ,然后看看这个solution卸载软件包。谢谢@qtips。

关于python - pydot 和 graphviz 错误 : Couldn't import dot_parser, 无法加载点文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15951748/

相关文章:

centOS 上的 Python netadd 模块

python正则表达式不正确匹配

python - 在Python中迭代列表后,打印出余数

用于读取文本文件并写入 csv 文件的 Python 脚本

javascript - GraphViz JavaScript : ReferenceError: "Viz" is undefined

graphviz - 从 Graphviz 中记录元素的中心开始绘制传出边

graphviz - 带有 dot/graphviz 的框图布局

python - 用循环填充空数据框

Python String to Int——非常简单但棘手

python - 在python中打印对象实例