Python 导入错误:无法导入名称';解析器';
我有很多模块。模块及其导入内容如下所示:Python 导入错误:无法导入名称';解析器';,python,python-import,Python,Python Import,我有很多模块。模块及其导入内容如下所示: ast.py: import enum from abc import ABC, abstractmethod err.py: none lexer.py: from token import TokenTag, Token parser.py: from ast import * from err import UndeclaredIdentError, SyntaxError from toke
ast.py:
import enum
from abc import ABC, abstractmethod
err.py:
none
lexer.py:
from token import TokenTag, Token
parser.py:
from ast import *
from err import UndeclaredIdentError, SyntaxError
from token import TokenTag as Tag
from type import Type
peep.py:
from lexer import Lexer
from parser import Parser
token.py:
import enum
treewalker.py:
from abc import ABC, abstractmethod
type.py:
import enum
from treewalker import TreeWalker
我试图运行peep.py,但出现以下错误:
Traceback (most recent call last):
File "peep.py", line 2, in <module>
from parser import Parser
ImportError: cannot import name 'Parser'
回溯(最近一次呼叫最后一次):
文件“peep.py”,第2行,在
从解析器导入解析器
ImportError:无法导入名称“Parser”
我不明白为什么会这样,我在上面的文件层次结构中找不到任何明显的循环依赖关系。我做了一些研究,我认为应该将模块ast.py重命名为syntaxtree.py,因为Python的标准库中已经存在ast.py。重命名后,它产生了相同的结果。感谢任何形式的帮助,谢谢 打开parser.py文件,将
的代码从parser import parser
更改为from.parser import parser
重命名parser.py
。它是python中的一个内置模块。@AjayDabas是否可以覆盖该模块?只需在目录中创建一个\uuuu init\uuuuuuuu.py
文件,告诉python从当前目录导入即可。