Python の configparser の引数
empty_lines_in_values

データ

以下のデータを読み込みます.full_line には空行がありませんが,empty_line にはデータ中に空行があります.

# empty_lines_in_values = False にすると,値にに空行が使えなくなる.

[line]
  full_line: このきーの値の行はつまっています.
    空行はありません.
  empty_line: 次の行は空行です.
  
    ここまでがデータです.

empty_lines_in_values = True

プログラム

コンストラクターの引数 empty_lines_in_values が True (デフォルト) だとデータ中に空行が許されます.

#!/usr/bin/python3
import configparser

dat = configparser.ConfigParser(empty_lines_in_values=True)
dat.read('sample.dat')

for section in dat.sections():
    for key in dat[section]:
        print(section, '>', key, ':', dat[section][key])
    print()

実行結果

以下に実行結果を示します.データ中に空行が有ります.

line > full_line : このきーの値の行はつまっています.
空行はありません.
line > empty_line : 次の行は空行です.

ここまでがデータです.

empty_lines_in_values = Flase

プログラム

コンストラクターの引数 empty_lines_in_values が True (デフォルト) だとデータ中に空行が許されます.

#!/usr/bin/python3
import configparser

dat = configparser.ConfigParser(empty_lines_in_values=False)
dat.read('sample.dat')

for section in dat.sections():
    for key in dat[section]:
        print(section, '>', key, ':', dat[section][key])
    print()

実行結果

以下に実行結果を示します.データに空行があると,エラーになりメッセイージが表示されます.

Traceback (most recent call last):
  File "./false.py", line 5, in 
    dat.read('sample.dat')
  File "/usr/lib/python3.5/configparser.py", line 696, in read
    self._read(fp, filename)
  File "/usr/lib/python3.5/configparser.py", line 1107, in _read
    raise e
configparser.ParsingError: Source contains parsing errors: 'sample.dat'
	[line  8]: '    ここまでがデータです.\n'