Python 跨文件夹导入自定义包的实现
一、问题再现
有时我们自己编写一些模块时,跨文件夹调用会出现ModuleNotFoundError: No module named 'XXX'
二、解决方案
只需要在下层文件夹中的__init__.py
文件中,添加如下代码即可:
import sys from os import path sys.path.append(path.split(path.realpath(__file__))[0])
如图所示:
三、知识补充
导入自定义包的步骤主要包括以下几个方面:
包的结构: 确保你的自定义包有正确的结构。一个典型的包结构包括一个包含__init__.py
文件的目录,以及一些模块文件。
sys.path: Python 解释器会在一些默认路径中查找模块,而你的包可能不在这些路径中。因此,你需要确保包所在的路径在sys.path
中。你可以通过以下方式将包的路径添加到sys.path
:
import sys sys.path.append("/path/to/your/package")
这将包含你的包的路径添加到Python解释器的搜索路径中。
导入语句: 使用import
语句导入你的包或模块。假设你有一个包叫做my_package
,并且在其中有一个模块my_module
,你可以这样导入:
from my_package import my_module
或者,如果你只想导入模块中的特定函数或变量:
from my_package.my_module import my_function
确保以上步骤都正确执行,你就能成功导入自定义包了。
到此这篇关于Python 跨文件夹导入自定义包的实现的文章就介绍到这了,更多相关Python 跨文件夹导入自定义包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Pytorch DataLoader shuffle验证方式
这篇文章主要介绍了Pytorch DataLoader shuffle验证方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-06-06解决Python3.7.0 SSL低版本导致Pip无法使用问题
这篇文章主要介绍了解决Python3.7.0 SSL低版本导致Pip无法使用问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-09-09Python cookbook(数据结构与算法)将名称映射到序列元素中的方法
这篇文章主要介绍了Python cookbook(数据结构与算法)将名称映射到序列元素中的方法,结合实例形式分析了Python使用collections.namedtuple()进行元组命名相关操作技巧,需要的朋友可以参考下2018-03-03
最新评论