【问题标题】:How do I read/parse all yaml files in a directory?如何读取/解析目录中的所有 yaml 文件?
【发布时间】:2019-06-15 20:30:55
【问题描述】:
好吧,我正在尝试读取python 2.7 和pyyaml 目录中的utf-8 yaml 文件集合。
我尝试使用os.listdir(os.getcwd()),但它实际上返回了一个文件列表,我需要读取文件并展示内容(键、值)。
该目录只有yaml文件,并且已经安装了pyyaml库。
所有yaml文件的内容都类似这样:
fruits:
- bananas
- apples
- grapes
谁能帮帮我?
【问题讨论】:
标签:
python
python-2.7
yaml
pyyaml
【解决方案1】:
你可以试试这个:
demo_file1.yaml的内容:
fruits:
- bananas
- apples
- grapes
demo_file2.yaml的内容:
veg:
- cauli
- lady finger
- tomato
代码:
import yaml
import glob
files = glob.glob("/path/to/directory/*.yaml") # list of all .yaml files in a directory
def read_yaml_file(filename):
with open(filename, 'r') as stream:
try:
print(yaml.safe_load(stream))
except yaml.YAMLError as exc:
print(exc)
for file in files:
read_yaml_file(file)
输出:
{'fruits': ['bananas', 'apples', 'grapes']}
{'veg': ['cauli', 'lady finger', 'tomato']}