所以我尝试使用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):
答案 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()