2016-04-27 14 views
3

Python 3.5とConfigParserの使用。すなわち、無価値デリミタなしのConfigParser

[Section] 
key1 
key2 
key3 

は、私はこのような設定ファイルを使用します。デフォルトではConfigParserには値が必要ですが、それを処理するコンストラクタにallow_no_values=Trueを渡すことができます。

ただし、パーサーは引き続きデフォルトで('=', ':')の区切り文字を分割しようとします。したがって、私の行にはデフォルトでそれらの行を含めることはできません。しかし、私は何かを明確にすることは望まない。私のラインのどれもが価値を持つことはないだろう。

区切り記号=()または[]または[なし]を渡すと機能しません。空のリストを使用している場合、それはoption '' in section 'Section' already existsという文句を言いますが、Noneならば'NoneType' is not iterableとなります。

分割が起こらないことを確認する方法はありませんか?それは、私が「希望」が決して使用されないかもしれないいくつかの文字を指定しなければならないということを最適に感じません。

+0

"config"ファイルは実際にはデータファイルです。それを手動で読み、解析します。 – martineau

答えて

1

delimiters=('\n',)を設定することができます。理論上、キー/値区切り文字が改行文字であることを意味します。行区切り文字も改行文字であり、それが優先されるためです。

+0

いいアイデア、それはうまく動作します:) – Zitrax

関連する問題