私は、ply解析ツールを使用するプロジェクトで作業しています。私はiPythonでプロジェクトを実装する必要がありますが、このポスト Problems with PLY LEX and YACCで見られるように、プライはツールで問題を引き起こしています。このように、私はプライとノートブックツールを同時に使用できるようにするための問題の修正または回避策があるかどうかを知りたいと思っていました。iPython/JupyterでPlyを使用する
1
A
答えて
0
おそらく少し遅れて応答しましたが、同じ問題に直面して回避策を見つけることができました。
レクサーをビルドするには、PLYには__file__
という名前の変数が必要です。したがって、lex.lex()
を呼び出す前に、__file__
にノートブックファイルの名前を設定する必要があります。例えば
:
[...]
__file__ = "My_Notebook.ipynb"
lexer = lex.lex()
[...]
そして、あなたはクラスを使用している場合(以下、このexample):あなたが指摘したように、ノートブックファイルごとに複数のレクサーを定義するべきではありません。また
class MyLexer(object):
# [...]
# lots and lots of token declarations
# [...]
# Build the lexer
def build(self,**kwargs):
self.lexer = lex.lex(module=self, **kwargs)
my_lexer = MyLexer()
__file__ = "My_Notebook.ipynb"
my_lexer.build()
セクション4.15の末尾にあるPLY documentationによって。 「プライは、それがなければならないことを意味しており、文法がモジュールであることを主張:あなたがにリンクされている質問から
parser = yacc.yacc(write_tables=False)
関連する問題
- 1. PLYを使用してSQL文を解析する
- 2. ideoneを使用してPLYレクサーを構築できません
- 3. PythonでPLYを解析する
- 4. Three.js ply colorless(オールブラック)
- 5. alfresco preview .ply files
- 6. Dicomから.PLYへの変換VTKを使用した変換
- 7. PLYを使用した論理式の解析
- 8. PLYパーサーを再初期化する
- 9. PLYを使用してファイルの構造を適用してください
- 10. Python PLY Yacc "構文エラー"
- 11. Python PLYパーサー構文エラー
- 12. 正規表現の空白をplyでエスケープしますか?
- 13. 手書きのレクサー用のPLYインターフェイスの作成方法は?
- 14. lasファイルをplyファイルに変換するには?
- 15. AssimpはPLYモデルの頂点の色をロードできません
- 16. Pythonでplyのyaccの優先順位を設定する方法は?
- 17. argsとkwargsとの衝突を減らす/減らす - PLY
- 18. PLYでの競合の理解と修正方法
- 19. PLYを使用して解析するとき、不平衡括弧のエラーを発生させるにはどうすればよいですか?
- 20. PLYのlexとyaccを2つの別々のクラスにカプセル化する方法
- 21. PLYのテーブル再生成を防ぐ方法
- 22. PythonのPLY複数のルール、我々はルールが使用された区別することができますどのようにプライで
- 23. Python parser plyが間違った正規表現と一致する
- 24. plyファイルを書き出すためのJavaライブラリがありますか?
- 25. PLY(Python Lex-Yacc)で文法ファイルで非終端記号を破棄する方法
- 26. if-elseおよびwhile文のPython PLY問題
- 27. パーサーからのPython PLYレクサー状態の制御
- 28. COOL言語のパーサージェネレータで、このPLY Shift-Reduceの問題を解決する方法/方法
- 29. PLYファイルをロードするときに幾何学からBufferGeometryに変換するTHREE JSが機能しない
- 30. PythonとPLY:トークン 'XXX'を取り除く方法、定義済みだが使われていない
:
は今、IPython/Jupyterノートブックで
yacc
を使用するには、このようにそれを呼び出す必要がありますファイルに入ってください。 " IPythonノートブックはファイルではありません。あなたのシステムのどこかのファイルとして文法を保存し、ノートブックに読み込むことができます。 –@AkshatMahajanノートブックはファイル( '.ipynb')ですが、モジュールではありません。 –