首页  >  文章  >  后端开发  >  在Python中从子目录导入模块时如何解决导入错误?

在Python中从子目录导入模块时如何解决导入错误?

Patricia Arquette
Patricia Arquette原创
2024-11-14 21:42:02191浏览

How to Resolve ImportErrors When Importing Modules from Subdirectories in Python?

从子目录导入文件:解决导入错误

在 Python 中,从子目录导入模块可能会导致导入错误。考虑以下场景:

项目结构:

  • /project/tester.py
  • /project/lib/BoxTime.py

导入尝试:

import lib.BoxTime

错误:

Traceback (most recent call last):
  File "./tester.py", line 3, in <module>
    import lib.BoxTime
ImportError: No module named lib.BoxTime

解决方案:

根据Python包文档(第6.4节),出现此错误是因为Python找不到/project/lib目录在 Python 路径中。要解决此问题,您必须将一个名为 __init__.py 的空文件添加到 /project/lib 目录中。

此 __init__.py 文件用作指示该目录应被视为包的指示符。添加后,Python 将在路径中包含 /project/lib,使您能够使用 lib.BoxTime 导入 BoxTime 或将 lib.BoxTime 作为 BT 导入。

以上是在Python中从子目录导入模块时如何解决导入错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn