私はYAMLが初めてで、YAMLファイルを解析し、解析されたYAMLのデータを使用/アクセスする方法を探しています。
PyYAML tutorial 、 " How canなど、YAMLファイルの解析方法に関する説明に出くわしましたPythonでYAMLファイルを解析します 」、「 Python dictをオブジェクトに変換しますか? 」 、しかし、私が見つけていないのは、解析されたYAMLファイルからデータにアクセスする方法の簡単な例です。
次のようなYAMLファイルがあると仮定します。
treeroot:
branch1: branch1 text
branch2: branch2 text
「branch1 text」というテキストにアクセスするにはどうすればよいですか?
「 YAML解析とPython? 」は解決策を提供しますが、より複雑なYAMLファイルからデータにアクセスする際に問題が発生しました。そして、解析されたYAMLファイルのデータにアクセスする標準的な方法があるのか、おそらく「 tree iteration 」または「 elementpath "表記またはXMLファイルの解析時に使用されるもの
PyYAMLのyaml.load()
関数はYAMLドキュメントをネイティブPythonデータ構造に解析するため、キーまたはインデックスでアイテムにアクセスできます。リンクした質問の例を使用して:
import yaml
with open('tree.yaml', 'r') as f:
doc = yaml.load(f)
branch1 text
にアクセスするには、次を使用します。
txt = doc["treeroot"]["branch1"]
print txt
"branch1 text"
yAMLドキュメントでは、branch1
キーの値がtreeroot
キーの下にあるためです。