1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

pyyamlを使ったyamlの読み込み書き込み

Last updated at Posted at 2021-03-21

はじめに

pythonでyamlファイルの読み込みと書き込みを必ず忘れるので、メモ代わりにまとめています。

環境

win10
python 3.9.1
pyyaml 5.4.1

pyyamlのインストール

pip install pyyaml

使用例

自分がよく使うためのテンプレートの意味もあるので、ここ違うんじゃねって思ったらコメントで指摘してくれるとありがたいです。

ここで使うyamlファイル

example.yaml
key1: value
key2: value

読み込み

read_yaml.py
import yaml


with open('example.yaml', encoding='utf-8')as f:
    example = yaml.safe_load(f)


print(example)
#{'key1': 'value', 'key2': 'value'}

書き込み

write.py
import yaml


example = {'key1': 'value', 'key2': 'value'}
with open('example.yaml','w')as f:
    yaml.dump(example, f, default_flow_style=False, allow_unicode=True)

default_flow_style=Falseはyamlをfllowスタイル(上のexample.yamlの形)に出力するため
allow_unicode=Trueは日本語などをエンコードしないで、読めるように出力するため

書き込みが必要で実際にコード内で使うとき

主に自分が使うとき用

example.py
import yaml


with open('example.yaml', encoding='utf-8')as f:
    example = yaml.safe_load(f)


def close_example():
    with open('example.yaml','w')as f:
        yaml.dump(example, f, default_flow_style=False, allow_unicode=True)

こうしておくことで、内部で変更したりして保存するときに、関数を呼び出すだけで済む。

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?