问题
I would like to use ANTLR4 with Python 2.7 and for this I did the following:
I installed the package
antlr4-4.6-1on Arch Linux withsudo pacman -S antlr4.I wrote a
MyGrammar.g4file and successfully generated Lexer and Parser Code withantlr4 -Dlanguage=Python2 MyGrammar.g4Now executing for example the generated Lexer code with
python2 MyGrammarLexer.pyresults in the errorImportError: No module named antlr4.
What could to be the problem? FYI: I have both Python2 and Python3 installed - I don't know if that might cause any trouble.
回答1:
You need to install antlr4 for python through pip:
sudo pip install antlr4-python2-runtime
If you don't have pip on you system, install it first with:
sudo pacman -S python2-pip
回答2:
The problem was that antlr4 was only installed for Python3 and not Python2. I simply copied the antlr4 files from /usr/lib/python3.6/site-packages/ to /usr/lib/python2.7/site-packages/ and this solved the problem!
来源:https://stackoverflow.com/questions/42737716/pythonantlr4-no-module-named-antlr4