首页 > 解决方案 > 无法在目录中导入另一个 python 文件

问题描述

试图将另一个 python 文件导入到程序中。这是我的目录结构:

+root<br>
|-- train.py<br>
|--+src<br>
|    |--layers.py
|    |--mccnn.py

目前我的train.py文件使用这个

import src.mccnn as mccnn
import src.layers as L

并且mccnn.py文件使用

import layers as L

当我运行时test.py,我遇到了一个错误“没有名为'layers'的模块,在回溯中我可以看到它在mccnn.py文件中出现

我正在根文件夹中运行 python 文件。我不知道为什么这会引发错误。我能找到的答案都没有帮助解决这个问题。

PS:原始代码是为 Python 2.7 编写的。不确定是否有相关信息。

标签: python-3.x

解决方案


按照结构如下

+root
|-- 
|----src
|------<package_name>
|         |--__init__.py
|         |--layers.py
|         |--mccnn.py
|         |--train.py<br>

然后在 mccnn.py 中说你可以说 import layers as L ,在 train.py 中你可以说

import mccnn as mccnn
import layers as L

更多细节可以在这里看到https://packaging.python.org/tutorials/packaging-projects/


推荐阅读