3

runsnakeを実行しようとすると、

ImportError: No module named wx 

ipython または python セッションを開くと、正常に動作するようです。

>>> import wx
>>> import sys
>>> print [p for p in sys.path if 'wx' in p]    
['/usr/local/lib/wxPython-2.9.4.0/lib/python2.7/site-packages', '/usr/local/lib/wxPython-2.9.4.0/lib/python2.7/site-packages/wx-2.9.4-osx_cocoa', '/usr/local/lib/wxPython-2.9.4.0/lib/python2.7/site-packages/wx-2.9.1-osx_cocoa/tools']

そのコードをスクリプトに入れてpython script.py. しかし、そのコードを先頭に配置するとrunsnake.py、空のリストが出力されます (全体sys.pathを出力すると、私の $PYTHONPATH とはまったく異なるパスが出力されます)。

なぜ違うのでしょうか? wxPythonを認識させるにはどうすればよいですか?

編集:pip freeze出力に含まれるもの

SquareMap==1.0.1
RunSnakeRun==2.0.2b1
wxPython==2.9.4.0
wxPython-common==2.9.4.0
4

2 に答える 2

1
  • runsnake.pypython インタプリタと同じ環境で実行していますvirtualenvか? そうでない場合、同じパッケージはありません。
  • runsnake.pyで構築された仮想環境で実行している場合--no-site-packages、システム全体のパッケージにはアクセスできません。pip freezeにアクセスできるかどうかは実行中にわかりますwxPython。そうでない場合は、それが問題です。virtualenvちゃんと新規作成できます。
  • virtualenvコマンドを実行する前または後に wxPython をインストールしましたか?
  • シバンをチェックして、同じ python#!/usr/bin/pythonまたは#!/usr/bin/env python
  • どのインタープリターを使用するかを強制することもできますpython runsnake.py

OSX 上の Python のフレームワーク ビルドについては、この質問を参照してください

于 2012-10-21T16:17:36.310 に答える
0

virtualenv の外で runsnake を実行してみてください。

ここで詳細な理由を参照してください: http://wiki.wxpython.org/wxPythonVirtualenvOnMac

于 2015-06-08T23:50:14.780 に答える