好吧,我正在尝试在包含utf-8
和python 2.7
的目录中读取pyyaml
yaml文件的集合。
我尝试使用os.listdir(os.getcwd())
,但实际上它返回文件列表,我需要阅读文件并展示其内容(键,值)。
该目录仅包含yaml文件,并且已安装pyyaml库。
yaml文件的所有内容都与此类似:
fruits:
- bananas
- apples
- grapes
有人可以帮助我吗?
答案 0 :(得分:0)
您可以尝试以下方法:
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']}