2009-04-30 13 views
-3

特定の構文でファイルを解析するには、どのタイプのPythonオブジェクトを使用する必要がありますか?また、ファイルを通過させるためには、どのようなループを実行する必要があります。 1つのパスで十分でしょうか?二、三?Pythonでファイルを解析する

+0

...どのような構文ですか? –

+5

答え: "適切なもの、forループで十分である。おそらく。"うまくいけば、私の答えはあなたの質問と同様に詳細で有益で正確です。 – tzot

答えて

3

文法によって異なります。独自のパーサーを実装する代わりにpyparsingを使用できます。それは非常に使いやすいです。

1

構文の複雑さは?あなたは新しいものを発明しているのですか?

複雑な言語の場合は、lex + pybisonのようなbisonバインディングを考慮してください。

使用する構文を決定できる場合は、YAMLを試してみてください。

+0

私はJSONをYAMLに提案したいと思います。なぜなら、標準ライブラリにあり、YAMLがそうでないからです。 – millimoose

2
あなたの目的に関する詳細な情報を提供する必要があります

...

  • 何構造ファイル
  • 、どのような?タブは区切られているXMLのような?
  • どのようなエンコーディングですか?
  • ターゲット構造とは何ですか?
  • 定期的に(通訳者のように)ファイルを再解析する必要がありますか?
0

パーサに1,2,3回のパスがある場合、プログラミング言語(Python)に依存しません。構文解析しようとしている構文の文法に依存します。

構文が複雑な場合は、Francisが述べたようにLEX/YACCコンボをお勧めします。

関連する問題