4

コマンドラインからpythonソフトウェアをシミュレートする巨大な進化を実行しようとしています。ソフトウェアは、次の python パッケージに依存しています。

1-ネットワークX

2-パイパーシング

3-numpy

4ピドット

5-matplotlib

6-graphviz

私が得るエラーはこれです:

Couldn't import dot_parser, loading of dot files will not be possible.
initializing with file= initAdapt.py in model dir= ./Test_adaptation//
Traceback (most recent call last):
  File "run_evolution.py", line 230, in <module>
    gr.write_dot( os.path.join(test_output_dir, 'test_net.dot') )
  File "/Library/Python/2.7/site-packages/pydot.py", line 1602, in <lambda>
    lambda path, f=frmt, prog=self.prog : self.write(path, format=f,          prog=prog))
  File "/Library/Python/2.7/site-packages/pydot.py", line 1696, in write
    dot_fd.write(self.create(prog, format))
  File "/Library/Python/2.7/site-packages/pydot.py", line 1740, in create
    self.write(tmp_name)
  File "/Library/Python/2.7/site-packages/pydot.py", line 1694, in write
    dot_fd.write(self.to_string())
  File "/Library/Python/2.7/site-packages/pydot.py", line 1452, in to_string
    graph.append( node.to_string()+'\n' )
  File "/Library/Python/2.7/site-packages/pydot.py", line 722, in to_string
    node_attr.append( attr + '=' + quote_if_necessary(value) )
TypeError: cannot concatenate 'str' and 'int' objects

スタックオーバーフローに関する同様の質問に対して提案された解決策をすでに試しました。それでも同じエラーが発生します。これが私が使用しているパッケージのバージョンと私のpythonのバージョンです。

  • 私はpython 2.7.6を使用しています
  • コマンドを入力するwhich -a pythonと、「/usr/bin/python」という結果が得られます。

1-パイパーシング (1.5.7)

2-pydot (1.0.2)

3-matplotlib (1.3.1)

4-graphviz (0.4.2)

5-networkx (0.37)

6-numpy (1.8.0rc1)

何か案は?同様の質問に対する解決策がうまくいかないことを見て、私の場合、問題はより根本的なものかもしれないと思います。おそらくPythonのインストール方法に問題があります。

4

2 に答える 2

3

最新バージョンの pydot を使用していない特定の理由はありますか?

1.0.2 のこのリビジョンでは、まさにその問題が修正されているようです。

https://code.google.com/p/pydot/source/diff?spec=svn10&r=10&format=side&path=/trunk/pydot.py

722 行を参照してください。

于 2015-02-16T05:56:40.983 に答える
1

pyparsing モジュールをアップグレードすると、この問題が修正されました。試す:

pip install --upgrade pyparsing
于 2015-10-09T18:22:37.667 に答える