【Python】PyYAMLのインストール

【Python】PyYAMLのインストール プログラミング

「PythonでYAMLファイルを扱いたい」
「階層構造を持ったデータを設定ファイルに設定したい」

このような場合には、PyYAMLがオススメです。
この記事では、PyYAMLについて解説しています。

本記事の内容

  • PyYAMLとは?
  • PyYAMLのシステム要件
  • PyYAMLのインストール
  • PyYAMLの動作確認

それでは、上記に沿って解説していきます。

PyYAMLとは?

PyYAMLは、PythonでYAMLファイルを処理できるPythonライブラリです。

YAMLファイルと聞くと、難しく思うかもしれません。
でも、何も難しく捉える必要はありません。

YAMLファイルが単なる設定ファイルだと思えば、問題ありません。
そして、その設定ファイルの値に階層構造を持たせることが可能です。

また、設定ファイルの値に様々な型を設定できます。
文字列や数値だけではなく、リスト形式なども設定可能です。

以上、PyYAMLについて説明しました。
次は、PyYAMLのシステム要件を確認します。

PyYAMLのシステム要件

現時点(2021年12月)でのPyYAMLの最新バージョンは、6.0となります。
この最新バージョンは、2021年10月14日にリリースされています。

サポートOSに関しては、以下を含むクロスプラットフォーム対応です。

  • Windows
  • macOS
  • Linux

また、サポート対象となるPythonのバージョンは以下となります。

  • Python 3.6
  • Python 3.7
  • Python 3.8
  • Python 3.9
  • Python 3.10

このPythonの対応状況は、完璧と言えます。
完璧とは、以下のPython公式開発サイクルに従っているということです。

バージョンリリース日サポート期限
3.62016年12月23日2021年12月23日
3.72018年6月27日2023年6月27日
3.82019年10月14日2024年10月
3.92020年10月5日2025年10月
3.102021年10月4日2026年10月

ただ、2021年12月末でPython 3.6はサポート終了となります。
個人的には、Python 3.9の利用が最も無難かと思います。

以上、PyYAMLのシステム要件について説明しました。
次は、PyYAMLをインストールします。

PyYAMLのインストール

検証は、次のバージョンのPythonで行います。

$ python -V
Python 3.9.9

まずは、現状のインストール済みパッケージを確認しておきます。

$ pip list
Package    Version
---------- -------
pip        21.3.1
setuptools 59.5.0
wheel      0.36.2

次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip setuptools

では、PyYAMLのインストールです。
PyYAMLのインストールは、以下のコマンドとなります。

pip install PyYAML

インストールは、一瞬で終わります。
では、どんなパッケージがインストールされたのかを確認しましょう。

$ pip list
Package    Version
---------- -------
pip        21.3.1
PyYAML     6.0
setuptools 59.5.0
wheel      0.36.2

PyYAMLには、依存するパッケージがありません。
PyYAMLは、非常にシンプルな構成と言えます。

よって、既存環境にも簡単に導入可能です。
依存関係でゴチャゴチャせずに済みます。

以上、PyYAMLのインストールを説明しました。
次は、PyYAMLの動作確認を行います。

PyYAMLの動作確認

まずは、YAMLファイルを用意しましょう。

text.yaml

para1: 日本語
para2: 12345
para3: [1, 2, 3]

このYAMLファイルを読み込むコードは、以下。

import yaml

with open("test.yaml") as data:
    yaml_obj = yaml.safe_load(data)

    print(type(yaml_obj["para1"]))
    print(yaml_obj["para1"])

    print(type(yaml_obj["para2"]))
    print(yaml_obj["para2"])

    print(type(yaml_obj["para3"]))
    print(yaml_obj["para3"])

上記コードを実行した結果は、以下となります。

<class 'str'>
日本語
<class 'int'>
12345
<class 'list'>
[1, 2, 3]

型を適切に判別しています。
簡単にPythonでYAMLファイルを扱うことが確認できました。

以上、PyYAMLの動作確認を説明しました。

タイトルとURLをコピーしました