使用Python解释器运行app.py时抛出ModuleNotFoundError但烧瓶运行顺利

时间:2019-05-10 07:13:15

标签: python-3.x docker exception flask import

我有一个具有以下层次结构的软件包:

- main package

    -utils package

          - this package's __init __.py (empty)

          - some other modules

    - app.py
    - __ init __.py (empty)

app.py从utils中的模块调用函数为:

from main.utils.module import function_name

现在,当我在IDE中运行此命令时,一切正常。如果该信息有帮助,请使用PyCharm。

当我使用python3 app.py在终端中运行app.py时,它将引发ModuleNotFound错误:No module named main.

但是,当我在终端中执行简单的flask run时,这似乎工作正常。

我还有一个目标:我需要将此应用泊坞窗。在CMD字段或ENTRYPOINT中指定什么? Docker的新手。

1 个答案:

答案 0 :(得分:0)

好的,这是一个非常愚蠢的错误。

只需将from main.utils.module import function更改为from utils.main.module即可。

我认为这是因为整个目录不在app.py的范围内吗?如果有人可以更好地解释此行为,请发布答案。