1

ターミナル (Mac OS) からいくつかの Python スクリプトを実行しようとしていますが、インポート エラーが発生します。たとえば、main をインポートしようとすると、次のようになります。

ImportError: No module named webapp2

モデル スクリプトをインポートしようとすると、次のようになります。

ImportError: No module named yaml

私の .bash_profile には、この PYTHONPATH 設定があります -

export GAE="/usr/local/google_appengine"
export PYTHONPATH="$PYTHONPATH:$GAE:$GAE/lib/django_1_4:$GAE/lib/:$GAE/lib/yaml"

私もこのアプローチを試しました:

import os
import sys

DIR_PATH = os.path.abspath(os.path.dirname(os.path.realpath(__file__)))
# ...

EXTRA_PATHS = [
          DIR_PATH,
          os.path.join(DIR_PATH, 'lib', 'antlr3'),
          os.path.join(DIR_PATH, 'lib', 'django'),
          os.path.join(DIR_PATH, 'lib', 'fancy_urllib'),
          os.path.join(DIR_PATH, 'lib', 'ipaddr'),
          os.path.join(DIR_PATH, 'lib', 'webob'),
          os.path.join(DIR_PATH, 'lib', 'yaml', 'lib'),
]
# ...
sys.path = EXTRA_PATHS + sys.path

そして、他の GAE スクリプトをインポートしようとする前にそのスクリプトをインポートしましたが、それでも機能しません。GAEスクリプトを実行するために端末をすべてセットアップしている人はいますか? もしそうなら、どうやってそれをしましたか/私は何を間違っていますか?

4

1 に答える 1

4

よくある問題で、初めての私にとっては非常にイライラします。さまざまなインポートをすべて自分で追跡し始めると、論理がないように見えるフラケンシュタイン パスにたどり着きます。次に、GAE SDK 自体がどのように機能するかを最終的に読みました。にGAEを追加した後、ファイルの先頭でこれを試してくださいPYTHONPATH

import dev_appserver
dev_appserver.fix_sys_path()

幸運を!

于 2013-02-18T00:43:00.237 に答える