通过python对YAML文件做简单读取(1)
1、安装YAML模块
pip install pyyaml #安装处理YAML的模块
2、制作YAML文件
创建一个简单的YAML文件,另存为interfaces.yaml文件
interfaces:
- interface: ge-0/0/0
inet_address: 10.1.1.1/30
- interface: ge-0/0/1
inet_address: 10.1.1.5/30
- interface: ge-0/0/3
inet_address: 10.1.1.9/30
3、提取YAML文件内容
通过命令提示符切换到interfaces.yaml所在的目录下,运行python
>>> import yaml #导入yaml模块
>>> import os #导入os模块
>>>
>>> filePath = os.getcwd() #获取文件夹路径
>>> yamlPath = os.path.join(filePath,'interfaces.yaml') #获得文件路径
>>> print(yamlPath) #查看当前interfaces.yaml路径
C:\Users\86182\Desktop\NetDevOps\interfaces.yaml
>>>
>>> inf = 0 #定义默认参数
>>>
>>> with open(yamlPath) as f: #打开interfaces.yaml文件
... f_str = f.read() #读取文件内容
... y = yaml.load(f_str) #用yaml的load方法加载文件内容
... for inf in y.get("interfaces"): #把文本内容转换为一个字典类型的变量 。for循环遍历字典中的内容。
... print(inf.get("interface")) #输入字典中interface内容
... print(inf.get("inet_address")) #输入字典中inet_address内容
...
ge-0/0/0
10.1.1.1/30
ge-0/0/1
10.1.1.5/30
ge-0/0/3
10.1.1.9/30