导入的Python模块中的import语句如何工作?

方式

可以说我具有以下文件夹结构:

project/
    a.py
    module/
        b.py
        c.py
        __init__.py

a.py需要导入b.py,因此应包括from module import b

b.py需要导入c.py,因此应该只包含import c它们,因为它们位于同一文件夹中。但是,这将引发ModuleNotFoundErrora.py运行。

如果我将线路切换b.py为be,from module import c那么a.py它将运行,但是如果我尝试b.py自行运行,则会抛出ModuleNotFoundError

用Python导入的正确方法是什么?

DSLima90

在python 3中尝试使用:

from . import c

在您的module / b.py文件中。

这将迫使解释器在模块的本地文件夹中查找。

您将无法运行b模块(至少不能使用python module/b.py),如果您需要将其作为可执行文件,则可以查看:

Python 3中的相对导入

总结一下,为了运行您的b模块,您可以

python -m module.b

从父文件夹。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章