【Python】yaml形式のコンフィグファイルを読み書き

本記事ではPythonのyaml形式のコンフィグファイルの読み書き方法について超わかりやすく解説しています。Pythonは非常に人気なプログラミング言語です。そんなPythonのyamlを一緒に学習しましょう!

yamlとは?

yamlは、コンフィグファイルのファイル形式です。
そもそもコンフィグと何か知っていますか?
コンフィグについて、あまり良くわからない方は下の記事をご覧ください。
コンフィグについて1分程度で解説しています。

コンフィグとは コンフィグとは?【コンフィギュレーション】

コンフィグファイルには、「yaml形式」と「ini形式」が大きく分けてあります。
ini形式の読み書き方法はこちらの記事で解説していますので是非。
今回は「yaml形式」の読み書き方法を紹介します。
yaml形式の読み書きは、Pythonのyamlモジュールを利用します。

yaml形式はこんな感じ

Pythonのコンフィグファイルにはini形式が利用され、下のように書かれます。
内容がおかしいことはご容赦ください。

db_serber
  host: localhost
  port: 3306
  user: tetoblog

web_serber
  host: localhost
  port: 55
  pass: tetopass

configparserで書き込む

下のように、「yml」のモジュールをインポートするとyml形式のファイルを書き込むことができます。
非常に簡単ですね。

import yaml

with open('config.yml', 'w') as yaml_file:
    yaml.dump({
        'db_server':{
            'host': 'localhost',
            'port': 3306,
            'user': 'tetoblog'
        },
        'web_server':{
            'host': 'localhost',
            'port': 55,
            'pass': 'tetopass'
        }
    }, yaml_file, default_flow_style=False) # default_flow_style=Falseで形を整える

上のPythonファイルを実行すれば、下のような「config.yml」のファイルが生成されます。

[db_server]
host = localhost
port = 3306
user = tetoblog

[web_server]
host = localhost
port = 55
pass = tetopass

configparserで読み込む

先程作成した「config.ini」を読み込んでみます。
「config.read」とすれば簡単に読み込みが可能です。実行結果から読み込めていることが分かります。

import yaml

with open('config.yml', 'r') as yaml_file:
    data = yaml.load(yaml_file)
        
    # db_serverのportとuserを読み込み
    print(data['db_server']['port'])
    print(data['db_server']['user'])
【実行結果】
3306
tetoblog

ということで本記事はPythonのyaml形式のコンフィグファイルの読み書き方法を紹介しました。
最後まで読んでいただきありがとうございました\(^o^)/

超オススメのPC用品

PCを操作する上で、トラックボールマウスが非常におすすめです!
僕も感動したこのマウスを、騙されたと思って使ってみてください!(^^)

外部モニターで2倍以上の効率化が見込めます!
安いものだと、たったの1万円前後なのでおすすめですよー!\(^o^)/

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です