pythonでhogehoge.iniみたいな設定ファイルを読みこむ方法 #python

忘れないように。

Pythonで、例えばsetting.iniのようなファイルにパラメーターを設定し、そのパラメーターを読み込んで処理したい時は、ConfigParser というクラスを使えばよい。mysqlの設定ファイルmy.cnfのように、[main]や[option]といった、セクション(任意の名前でOK)が必要になる。

configparserのインストール

インストールは至って簡単。

% sudo pip install configparser

これだけ。

設定ファイル (setting.ini) の書き方

setting.iniの書き方は、次の通り。
この例では、userとpasswordとportを設定してみました。

settings.ini

[main]
name=admin
password=password

[options]
port=9999

Pythonスクリプトから読み込む

このように、setting.iniにパラメーターを設定しておく。
これを実行するPythonスクリプトから読み込むには、次のようにする。

import ConfigParser

CONFIG_FILE = 'settings.ini'

conf = ConfigParser.SafeConfigParser()
conf.read(CONFIG_FILE)

USERNAME = conf.get('main', 'user')
PASSWORD = conf.get('main', 'password')
PORT     = conf.get('options'   , 'port')

ConfigParser.get(セクション名, キー名) なので、設定ファイルにセクション名が必要となるわけですな。

Perl Tips | Python で、設定ファイルを読み込む方法 (ConfigParser)