0

私は逆にたくさんの情報を見つけることができますが、この方法ではそれほど多くはありません:)

要約すると、C++ で Python のコード補完機能を書きたいのですが、Python コードをトークン化する最善の方法がわかりません。

これを行うライブラリはありますか?

私は Python の tokenize.tokenize を C++ から直接呼び出すことに傾いています... しかし、C++ から Python コードを呼び出すのを見ると、いつでも私は斜視になります。

4

1 に答える 1

3

文法からパーサーを生成するために通常のパーサージェネレーターを使用することは、通常、Python では複雑になります (たとえば、重要な空白と難しい行継続規則のため)。

あなたの Python の使用経験についてはよくわかりませんが、Python から Python ファイルを解析し、可能な限り多くの処理を Python で行い、明確に定義されたデータ型を使用して結果を C++ コードに返すことをお勧めします ( stdc++ など) を使用し、バインディングに Boost.python を使用します。

于 2012-10-16T11:06:28.730 に答える