[英]Load yaml file as dict
我有一個存儲用戶名和他們的 ssh 密鑰的 YAML 文件。它看起來像這樣:
---
- bjones:
name: Bob Jones
ssh_keys:
- "ssh-rsa dsgdsgds"
- "ssh-rsa gdgsadg"
- "ssh-rsa sagagsa"
- jsmith:
name: Jimmy Smith
ssh_keys:
- "ssh-rsa gjdgjas"
我想將它作為 dict 帶入一些 python 中,但不確定如何。
In [98]: data = yaml.safe_load(open("/user-list.yaml"))
In [99]: type(data)
Out[99]: list
我該從哪里開始做一個 dict 呢?
我需要第一個具有多個 ssh 密鑰的用戶,以便密鑰也出現在換行符列表中
原始標記是一個字典列表 - 但您可以將這些字典鏈接在一起:
>>> from collections import ChainMap
>>> result = ChainMap(*data)
>>> result["jsmith"]
{'name': 'Jimmy Smith', 'ssh_keys': ['ssh-rsa gjdgjas']}
如果您確定原始標記中沒有重復條目,即len(data) == len(result)
,那么您可以使用dict(result)
安全地將其轉換回單個 dict。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.