基于Python和PyYAML读取yaml配置文件数据


Posted in Python onJanuary 13, 2020

一、首先我们需要安装 PyYAML 第三方库

直接使用 pip install PyYAML 就可以(这里我之前是装过的,所以提示我PyYAML已经在这个目录下了,是5.1.2版本的)

基于Python和PyYAML读取yaml配置文件数据

二、先看一下我的yaml配置文件中数据的格式

特点:

1.大小写敏感

2.使用缩进表示层级关系

3.缩进的时候使用的是空格,不是tab键(因为在写python脚本的时候可能会习惯用tab键进行缩进,这里的缩进只能使用空格。只要同层级的对齐,空一格或者空两格都是没有关系的)

4.#号表示注释

(这不就是python代码的基本语法嘛!)

基于Python和PyYAML读取yaml配置文件数据

三、读取yaml文件的方法

基于Python和PyYAML读取yaml配置文件数据

注:这里我们在 import 的时候,导入的不是 PyYAML ,而是 yaml。

四、看一下输出结果:

res1= {'mysql': {'host': 'value_host', 'port': 'value_port', 'user': 'value_user', 'password': 'value_password', 'database': 'value_databass', 'use_unicode': 'value_use_unicode', 'charset': 'value_charset'}, 'url': {'url': 'value_url'}, 'data': {'phone': 'value_phone', 'pwd': 'value_pwd', 'memberId': 'value_memberId'}}
res1= value_url

可以看到读取后的 yaml 配置文件数据是以字典类型读取出来的,可以对照之前的 yaml 文件中数据存放的格式,就可以看出yaml文件为什么要严格控制缩进了。

Python 相关文章推荐
Python的迭代器和生成器使用实例
Jan 14 Python
Python AES加密实例解析
Jan 18 Python
python 中的list和array的不同之处及转换问题
Mar 13 Python
python读取和保存视频文件
Apr 16 Python
Tensorflow实现卷积神经网络的详细代码
May 24 Python
pycharm运行和调试不显示结果的解决方法
Nov 30 Python
DataFrame:通过SparkSql将scala类转为DataFrame的方法
Jan 29 Python
Python简单I/O操作示例
Mar 18 Python
详解python pandas 分组统计的方法
Jul 30 Python
用Python徒手撸一个股票回测框架搭建【推荐】
Aug 05 Python
Python获取一个用户名的组ID过程解析
Sep 03 Python
Python unittest单元测试框架及断言方法
Apr 15 Python
Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中
Jan 13 #Python
利用python实现.dcm格式图像转为.jpg格式
Jan 13 #Python
如何基于Python + requests实现发送HTTP请求
Jan 13 #Python
python+tifffile之tiff文件读写方式
Jan 13 #Python
python读取tif图片时保留其16bit的编码格式实例
Jan 13 #Python
手动安装python3.6的操作过程详解
Jan 13 #Python
Python中join()函数多种操作代码实例
Jan 13 #Python
You might like
PHP之将POST数据转化为字符串的实现代码
2016/11/03 PHP
php过滤输入操作之htmlentities与htmlspecialchars用法分析
2017/02/17 PHP
php实现在线考试系统【附源码】
2018/09/18 PHP
在IE,Firefox,Safari,Chrome,Opera浏览器上调试javascript
2008/12/02 Javascript
jquery插件之easing 动态菜单
2010/08/21 Javascript
js取得url地址参数实例
2013/02/22 Javascript
JS小功能(列表页面隔行变色)简单实现
2013/11/28 Javascript
jQuery中:hidden选择器用法实例
2014/12/30 Javascript
javascript实现设置、获取和删除Cookie的方法
2015/06/01 Javascript
javascript动态生成树形菜单的方法
2015/11/14 Javascript
javascript的replace方法结合正则使用实例总结
2016/06/16 Javascript
Javascript 动态改变imput type属性
2016/11/01 Javascript
jquery uploadify如何取消已上传成功文件
2017/02/08 Javascript
jquery 仿锚点跳转到页面指定位置的实例
2017/02/14 Javascript
AngularJS执行流程详解
2017/02/17 Javascript
利用Mongoose让JSON数据直接插入或更新到MongoDB
2017/05/03 Javascript
在vue项目中使用sass的配置方法
2018/03/20 Javascript
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
2018/08/01 Javascript
微信小程序wx.navigateTo方法里的events参数使用详情及场景
2020/01/07 Javascript
JavaScript检测是否开启了控制台(F12调试工具)
2020/10/02 Javascript
Vue 组件注册全解析
2020/12/17 Vue.js
[03:06]3分钟带你回顾DOTA2完美盛典&完美大师赛
2017/12/06 DOTA
python删除文件示例分享
2014/01/28 Python
通过C++学习Python
2015/01/20 Python
python使用两种发邮件的方式smtp和outlook示例
2017/06/02 Python
深入浅析Python传值与传址
2018/07/10 Python
python实现批量视频分帧、保存视频帧
2019/05/31 Python
Python实现非正太分布的异常值检测方式
2019/12/09 Python
Python tcp传输代码实例解析
2020/03/18 Python
python实现批处理文件
2020/07/28 Python
Python常用扩展插件使用教程解析
2020/11/02 Python
HTML5中的nav标签学习笔记
2016/06/24 HTML / CSS
Weekendesk意大利:探索多种引人入胜的周末主题
2016/10/14 全球购物
2015年学生会主席工作总结
2015/04/21 职场文书
聘任合同书
2015/09/21 职场文书
Java并发编程必备之Future机制
2021/06/30 Java/Android