Python - YAMLの解析

YAMLは、インデントを使って階層構造を表現するという特徴をもったデータ形式です。

XMLよりもシンプルなのが特徴です。

PyYAMLをインストール

YAMLを扱うためにPyYAMLというライブラリをインストールします。

1
pip install pyyaml

YAMの解析

果物と値段などの一覧を、文字列にYAML形式で記述しそれをPyYAMLで解析し画面に表示します。

[コード]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import yaml

str = '''
Date: 2020-04-15
PriceList:
-
item_id: 1
name: Banana
color: yellow
price: 150
-
item_id: 2
name: Orange
color: orange
price: 300
-
item_id: 3
name: Apple
color: red
price: 200
'''
# YAMLを解析
data = yaml.load(str)

print(data['Date'])
print()

for d1 in data['PriceList']:
print(d1)

実行結果は下記の通りです。

[実行結果]

2020-04-15

{'item_id': 1, 'name': 'Banana', 'color': 'yellow', 'price': 150}
{'item_id': 2, 'name': 'Orange', 'color': 'orange', 'price': 300}
{'item_id': 3, 'name': 'Apple', 'color': 'red', 'price': 200}