0

例如当前目录有3个文件

A/x.py
A/__init__.py
scripts/b.py

第一行b.py看起来像这样:

from A.x import *

然后我尝试b.py像这样在当前目录中运行:

python scripts/b.py

但是,这将导致错误:

ImportError: No module named A.x

我认为原因是: A.x在运行shell的当前目录中,而不是在所在目录scriptsscripts/b.py

有没有人知道如何解决这个问题,以使 python 从当前的 shell 路径导入,而不是正在运行的脚本的路径?

4

1 回答 1

0

文档的这一部分 解释了模块搜索逻辑。

基本上,您需要将搜索目录放入您的sys.path变量中。一种方法是将其设置在环境变量 PYTHONPATH 中。

于 2013-10-29T06:02:49.760 回答