我创建了一个文件夹,其中包含我的 GAE 应用程序的所有模块以及 Jinja2 等外部库,以将所有内容分类在一个地方。我有这样的文件夹结构:
lib\
\utils\
\__init__.py
\firepython
\jinja2
\jsonpickle
__init__.py
sessions.py
当我尝试从 utils__init__.py 加载 Jinja 时,出现错误ImportError: No module named jinja2.environment
。当我查看 Jinja2 导入指令时,我看到它们看起来像from jinja2.loaders
. 我尝试将它们更改为类似from lib.jinja2.loaders
,但随后会出现有关导入的其他一些错误。不仅如此,如果有更方便和正确的方法来正确导入模块,我认为在外部库源中更改这些导入不是一个好习惯。我还添加了一些路径,PYTHONPATH
但它并不能解决所有问题。如何正确导入放置在另一个文件夹中的外部包,可能具有深层结构?