【问题标题】:python import relative path 'No module found error'python导入相对路径'未找到模块错误'
【发布时间】:2020-06-05 12:35:51
【问题描述】:

我在 folder2 试图执行 trigger.py

我用过:

from ..folder1.subfolder1.function1 import *
from ..folder1.test.py

在没有已知父包的情况下尝试相对导入时出错

【问题讨论】:

  • 如何运行代码?

标签: python python-3.x relative-import


【解决方案1】:

如果您用完了folder2,那么出于所有实际目的,trigger.py 本身就是一个模块,而不是包层次结构的一部分,并且不能使用对folder1 的相对导入(因为它们无关)。

如果可以,请将您的工作目录设为Project 的父目录,并使用以下命令调用您的脚本:

python3 -m Project.folder2.trigger

通过导入语法将模块作为主入口点运行,而不会丢失包结构的信息。

如果整个项目实际安装到系统或用户site-packages,你的工作目录就无关紧要了(只有当它不在sys.path中时才需要,因为工作目录本身包含在sys.path中) ,并且调用将在任何地方工作。

【讨论】:

    猜你喜欢
    • 2022-09-24
    • 1970-01-01
    • 2011-07-06
    • 1970-01-01
    • 2010-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多