Project
    __init__.py
    main.py
    parser.py


从main内部,鉴于解析器已经是内置的,如何导入我的解析器模块?

当前,重命名用户定义的模块是最坏的解决方案。

我试过了:

import parser
from parser import  TextFileParser

from parser import TextFileParser

from . import parser

from .parser import TextFileParser

from __future__ import absolute_import
from . import parser as myParser


以及其他一些组合。

我已经阅读了与答案to this相关的问题,但是我的理解是默认情况下3.5使用绝对导入。我也读过这个article,但它似乎并不适用。

如果可能的话,我也很乐意为所需的类取别名。即

TextParseClass = from parser import TextParser

最佳答案

使用此:from Project import parser

关于python - 如何导入和/或引用与内置Python名称相同的用户定义模块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35734929/

10-14 10:31