Python:从目录内的文件导入该目录
抱歉,如果标题让人困惑,因为英语不是我的母语。我遇到的问题是运行一个 Python 脚本,这个脚本需要导入它自己所在文件夹里的内容。文件夹的结构如下:
MyProject
|--Utils
|-- util
| |-- __init__.py
| |-- run.py
|-- __init__.py
|-- test.py
而 test.py 的代码如下:
import Utils.util
if __name__ == '__main__':
# Do something
当我运行 test.py 时,出现了这个错误:
ModuleNotFoundError: No module named 'Utils'
有没有什么方法可以让导入命令适应这个文件夹结构?如果可以的话,能不能帮我给这个问题起个名字,以便我更好地搜索?
我尝试在根文件夹创建一个新的脚本,那个脚本可以正常运行。但是,如果我想把像 test.py 这样的测试代码存放在模块化的文件夹里,导入命令就无法正常工作了。
2 个回答
2
你的项目结构格式不太对,不过我觉得在你的情况下这样做应该可以:
from .Utils import utils
1
出现“ModuleNotFoundError: No module named 'Utils'”这个错误,是因为Python在查找模块时,不会自动在子目录里找,除非这些子目录被当作包来处理。
from .util import