(1) Pythonのconfigparesrで書き込みや書き換え等の基本的な使い方をご紹介
(1-1) ConfigParserクラスについて
(1-2) サンプルプログラム
(1-3) INIファイルの読み込み
(1-4) INIファイルの書き込み
(1) Pythonのconfigparesrで書き込みや書き換え等の基本的な使い方をご紹介
(1-1) ConfigParserクラスについて
ConfigParserは設定ファイル(INIファイル)に定義した値を読み書きする事で、利用者にて簡単にカスタマイズ可能なプログラムを作る事ができます(Microsoftのiniファイルのような機能を提供)。
(1-2) INIファイルの構成
・コメントは「#」または「;」で記載します。
(例)
# セクション [COLOR_PALET] # キーと値 red = 1 green = 2 blue = 3 # セクション [Person.Info] # キーと値 firstname = Rainbow lastname = Planet height = 173 weight = 60
(1-3) INIファイルの読み込み(サンプルプログラム)
INIファイルの「読み込み」(Read)を行うPythonのサンプルプログラムをご紹介します。
(サンプルプログラム)
import configparser import sys if __name__ == '__main__': # ConfigParserクラスをインスタンス化 conf=configparser.ConfigParser() # 'Sample.ini'の名前をセット conf_path='Sample.ini' if 1==len(sys.argv) else sys.argv[1] # INIファイルの読み込み conf.read(conf_path,encoding='cp932') print(conf.get('COLOR_PALET','red')) print(conf.get('COLOR_PALET','green')) print(conf.get('COLOR_PALET','blue')) print(conf.get('Person.Info','firstname')) print(conf.get('Person.Info','lastname')) print(conf.get('Person.Info','height')) print(conf.get('Person.Info','weight'))
(図131)実行結果
コンソールに読み込んだINIファイルの値が表示されている。
(1-4) INIファイルの書き込み(サンプルプログラム)
INIファイルの「書き込み」(Write)を行うPythonのサンプルプログラムをご紹介します。
(サンプルプログラム)
import configparser if __name__ == '__main__': # ConfigParserクラスをインスタンス化 config = configparser.ConfigParser() #### 新規のセクション・キー・値の追加 config['COLOR_PALET'] = {'Red': '1','Green': '2','Blue': '3'} #### 新規のセクション・キー・値の追加 # 空のセクションを作成 config['Person.Info'] = {} # セクションにキーと値(右辺)をセット # 1つ目の値はセクション名、2つ目の値はキー config['Person.Info']['FirstName'] = 'Rainbow' # セクションの情報を変数に格納 person = config['Person.Info'] # セクション内の値の書き換え person['LastName'] = 'Planet' person['Height'] = '173' person['Weight'] = '60' #### INIファイルの生成・書き込み # 書き込みモードでオープン with open('Sample.ini', 'w') as configfile: # 指定したconfigファイルを書き込み config.write(configfile)
(図141)実行結果
config「Sample2.ini」を生成し、そこに書き込みの情報を反映。
(操作動画)
上記のプログラムを実際に操作した動画です。
①プログラムの確認(生成するINIファイルの名前とか) ⇒ ②プログラムの実行 ⇒ ③INIファイルの生成確認 ⇒ ④INIファイルの中身チェックという流れで進みます。