次の形式の構造化テキスト ファイルを Python で解析したいと思います。
[filter name_of_filter]
field1 = xxx, xxx
field2 = 23
テキスト ファイルには、フィールド数が異なる他のヘッダーが含まれている場合があります。私にとって、この構造は Windows の ini ファイルに似ています。ConfigParser がアクセスを提供するのと同じ方法でデータにアクセスしたいと思います。つまり、セクションを一覧表示してから、特定のセクションのフィールドとそれに対応する値を確認します。目的は、ファイルを読み取り、その一部を変更して、同じ形式で書き戻すことです。
オリジナルコード
import ConfigParser as cp
config = cp.ConfigParser()
config.read('test')
print config.sections()
出力
[]
私が間違っていたのは、「test」というファイルが存在しなかったことです。
バックグラウンド
投稿する前に、ConfigParser を試してみましたが (以前は .ini ファイルで使用していたため)、動作させることができませんでした。Google と SO は私を pyparser に導きましたが、それは文を解釈することに重点を置いているように見え、複数行のテンプレートを構成する方法を理解できませんでした。私はConfigParserのようなものを探していて、それが.iniファイルをどのように処理するか、またはBeautifulSoupがhtml/xmlドキュメントに対して行うか、xmlドキュメントに対してlxmlを行うかなどを探していました.
残念ながら、これがプログラミング/データ処理のどのブランチに該当するか、自分で解決策を特定するために使用する適切なキーワードがわかりません。欲求不満で、ここに質問を投稿しました。
受け入れ可能な回答
次のいずれも許容されます。
- ConfigParser を使用して問題に取り組む方法を示します。
- または、このタイプの構造化テキスト ファイルを解釈できる別のモジュールがある場合は、それを述べ、例を示してください。
ボーナスポイント
このタイプの問題は、プログラミングまたはデータ処理のどの分野に該当しますか? データがある場合は、テンプレートを定義するか、テンプレートが自動的に定義され、構造化された方法でデータにアクセスするために適用されます。
ありがとう!