我正在图书馆尝试第一次尝试,并且我注意到解决库内导入问题的最简单方法是使用以下结构:

from . import x
from ..some_module import y

这件事使我感到“不好”。也许这就是我不记得经常看到它的事实,尽管公平地说,我并没有四处寻找大量图书馆的胆量。

只是想看看这是否被认为是一种好习惯,如果不是,那么做这件事的更好方法是什么?

最佳答案

一切都有PEP。
PEP8: Imports的报价

Guido's decision导入中的PEP328:多行和绝对/相对
从PEP328复制面食
这是一个示例包布局:

package/
    __init__.py
    subpackage1/
        __init__.py
        moduleX.py
        moduleY.py
    subpackage2/
        __init__.py
        moduleZ.py
    moduleA.py
假设当前文件是moduleX.pysubpackage1/__init__.py,则以下是新语法的所有正确用法:
from .moduleY import spam
from .moduleY import spam as ham
from . import moduleY
from ..subpackage1 import moduleY
from ..subpackage2.moduleZ import eggs
from ..moduleA import foo
from ...package import bar
from ...sys import path

关于Python-来自。进口,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29283139/

10-09 10:16