目的
- yamlファイルの利用になれる
注意点
- yaml実務未経験者が書いているので、不備等あればご指摘いただければ幸いです。
yamlファイル
test.yaml
shop_type: fruits stand
## リスト
fruits_list:
- "りんご"
- "バナナ"
- "みかん"
## 辞書型
fruits__price_dict:
"りんご" : 100
"バナナ" : 150
"みかん" : 399
## 参照される側
shop_name: &test_ref "田中果物株式会社"
## 参照する側
shop_company_name: *test_ref
## 挿入(今回)
## あまり下記のような使い方はしないかもしれないが、思いついたので記載
# 更新前
staff_dict: &staff_dict
staff1 : "吉田"
staff2 : "井上"
staff3 : "田中"
# 更新1回目
staff_dict_updated: &staff_dict_updated
<<: *staff_dict
staff2: "木下(name change)"
staff4: "竹下(new staff)"
# 更新2回目
staff_dict_updated2:
<<: *staff_dict_updated
staff3: "近藤(name change)"
staff5: "佐々木(new staff)"
description: "\
新鮮な野菜を扱っています。\
とても安いです。\
いらっしゃいませ。"
実行例
test.py
import yaml
with open('test.yaml','r') as f:
shop_info = yaml.safe_load(f)
# 店のtypeを表示
print("店タイプ: ",shop_info["shop_type"])
# 果物リストの2番目を表示
print("果物リストの2番目: ",shop_info["fruits_list"][1])
# ミカンの価格を表示
print("ミカンの価格: ",shop_info["fruits__price_dict"]["みかん"])
# 会社の名前を表示
print("会社名: ", shop_info["shop_company_name"])
# 更新前のスタッフリストを表示
print("スタッフリスト: ",shop_info["staff_dict"])
# 更新1回目のスタッフリストを表示
print("スタッフリスト更新1回目: ",shop_info["staff_dict_updated"])
# 更新2回目のスタッフリストを表示
print("スタッフリスト更新2回目: ",shop_info["staff_dict_updated2"])
# 店の説明
print("会社説明: ",shop_info["description"])
実行結果
店タイプ: fruits stand
果物リストの2番目: バナナ
ミカンの価格: 399
会社名: 田中果物株式会社
スタッフリスト: {'staff1': '吉田', 'staff2': '井上', 'staff3': '田中'}
スタッフリスト更新1回目: {'staff1': '吉田', 'staff2': '木下(name change)', 'staff3': '田中', 'staff4': '竹下(new staff)'}
スタッフリスト更新2回目: {'staff1': '吉田', 'staff2': '木下(name change)', 'staff3': '近藤(name change)', 'staff4': '竹下(new staff)', 'staff5': '佐々木(new staff)'}
会社説明: 新鮮な野菜を扱っています。とても安いです。いらっしゃいませ。