Python解决跨目录导入自定义模块的方法

Owen
Owen
发布时间:2026-10-13| 6人浏览过
原创

本文详解Python在跨文件夹引入自定义模块时常见的报错原因及解决方案。通过对比直接导入与利用__init__.py文件配置路径的方法,展示如何正确实现subPack1与subPack2间的模块引用,帮助开发者避免ModuleNotFoundError错误,掌握Python包管理的核心技巧。

作为Python初学者,我曾在这个问题上耗费了大量时间,现在将我的解决思路整理分享,希望能对遇到相同困扰的读者有所帮助。

首先需要明确Python查找模块的顺序机制:系统会优先在当前脚本所在的文件夹内进行搜索,若未找到目标模块,则继续检索Python环境变量中配置的模块路径。因此,当我们需要引入位于同一文件夹下的自定义模块时,通常可以顺利执行且不会报错。然而,当涉及不同文件夹下的模块引用时,是否还能沿用相同的逻辑呢?

以下通过一个具体案例进行说明:

假设当前场景是需要在subPack1目录下的module_1.py文件中,引入位于subPack2目录下的module_2.py模块。

如果在module_1.py中直接编写如下代码:

import subPack2.module_2

执行后将触发报错信息。

这里提供一种最为简便的解决策略:

在subPack2目录下的__init__.py文件中添加相关配置:

import module_2

随后,在subPack1的module_1.py文件中采用如下写法:

import subPack2.module_2 as module_2

经过上述调整后,模块引用即可正常运行。

以上就是关于Python跨文件夹引入自定义模块方法的完整分享,希望能为大家提供有价值的参考,同时也欢迎大家继续支持本站获取更多技术内容。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。