错误导入蜡眼解析器

时间:2013-05-19 23:36:20

标签: python python-2.7 parser-generator waxeye

所以我尝试使用parses generator waxeye,但是当我尝试使用生成的解析器在python中使用程序的教程示例时,我得到错误:

AttributeError: 'module' object has no attribute 'Parser'

以下是代码的一部分:

import waxeye
import parser

p = parser.Parser()

最后一行导致错误。由waxeye生成的解析器我放在与 init .py相同的目录中。它是parser.py。

任何人都知道我的代码有什么问题吗?


编辑20-05-2013:

解析parser.py文件:

from waxeye import Edge, State, FA, WaxeyeParser

class Parser (WaxeyeParser):

2 个答案:

答案 0 :(得分:1)

您导入的parser模块可能不是您想要的模块。

尝试插入:

print parser.__file__ 

在导入之后,或尝试以不同方式命名解析器模块。

此外,如果使用Python 2.7,可以从absolute_imports模块启用__future__

答案 1 :(得分:1)

Python已经有一个名为parser的模块。 import语句将加载系统解析器模块而不是本地parser.py文件。解决此问题的最简单方法是更改​​parser.py的文件名。例如,xxparser.py。

import waxeye
import xxparser

p = xxparser.Parser()