5

すべてがDjango開発サーバーで想定どおりに機能します。Apacheでは、matplotlibが使用されている場合を除いて、djangoアプリも機能します。これが私が得るエラーです:

No module named multiarray.

Exception Type: ImportError 
Exception Value: No module named multiarray 
Exception Location: /usr/share/pyshared/numpy/core/numerictypes.py in <module>, line 81 
Python Executable: /usr/bin/python 
Python Version: 2.6.4 

Pythonシェルからは、両方のステートメントが機能します。importnumpy.core.multiarrayとimportmultiarrayです。何か案は?ありがとう

numpyファイルを調べていると、拡張子が「so」のマルチアレイモジュールが見つかりました。私の推測では、mod_pythonはこれらのファイルを読み取っていません。

4

2 に答える 2

9

問題が解決しました。これが私がしたことです。

まず、インポートエラーが発生する前に:

「multiarrayという名前のモジュールはありません。」

次のようなエラーが発生していました。

":/some/dir/.matplotlibの作成に失敗しました。MPLCONFIGDIRをmatplotlib構成データの書き込み可能なディレクトリに設定することを検討してください。"

pysharedフォルダーをPythonPath変数に追加することで、このエラーはなくなり、インポートエラーが発生しました。

だからこれが私がそれを修正した方法です:

PythonPath変数からpysharedフォルダーを削除しました。

matplotlibモジュールをインポートする前に、次の行を追加します。

import os
os.environ['HOME']='/some/writable/dir'

次に、matplotlib.pyplotまたはpylabをインポートする前に、次の行を追加します。

import matplotlib
matplotlib.use('Agg') 
# 'Agg' or whatever your backend is.

これはここに文書化されています。

そうです!現在、python2.5で動作しています。しかし、2.6でも動作すると思います。

于 2010-04-15T14:29:49.750 に答える
1

Win32では、py2.6.5からpy2.5にダウングレードすることで、同様の問題(ISAPI_WSGI(IIS)を介してpydモジュールを読み込めない)を解決しました。これは、再導入されたPythonのバグのようです。たとえば、この説明を参照してください。

于 2010-04-10T04:38:16.843 に答える