如何从子目录/子文件夹导入?

时间:2012-11-20 17:44:07

标签: python

从main.py,我想从后端文件夹

导入一个文件

WebAppName / main.py WebAppName /后端/ handlers.py

如何将其指定为导入语句

我知道从同一文件夹导入只是导入处理程序

但这是一个子目录,所以我该怎么做?

3 个答案:

答案 0 :(得分:2)

您需要在__init__.py文件夹中为Python提供backend文件,才能将其视为。然后,您可以import backend.handlersfrom backend.handlers import foo

答案 1 :(得分:2)

当您进行导入时,Python将搜索sys.path中列出的目录中的任何内容,这是一个Python列表。要使模块或其他代码源可导入,只需将代码源的路径附加到sys.path:

sys.path.append(os.path.join(os.path.abspath('.'), 'backend'))

在该行之后,然后导入处理程序,它将起作用。

祝你好运, 麦克

答案 2 :(得分:1)

所以你要在main.py中导入handlers.py?

import backend.handlers as handlers

如果在后端放置__init__.py

应该有效

编辑:选项2

在main.py的开头,您可以通过执行以下操作将子文件夹添加到python路径:

import sys
sys.path.append('./backend')