基于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基础教程之元组操作使用详解
Mar 25 Python
Python命名空间详解
Aug 18 Python
Python实现给qq邮箱发送邮件的方法
May 28 Python
Python3使用PyQt5制作简单的画板/手写板实例
Oct 19 Python
Python实现邮件的批量发送的示例代码
Jan 23 Python
浅谈pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix)
Apr 10 Python
python实现图书借阅系统
Feb 20 Python
python设置环境变量的作用和实例
Jul 09 Python
python 内置函数汇总详解
Sep 16 Python
关于Numpy数据类型对象(dtype)使用详解
Nov 27 Python
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
Dec 13 Python
Python爬取英雄联盟MSI直播间弹幕并生成词云图
Jun 01 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
用mysql_fetch_array()获取当前行数据的方法详解
2013/06/05 PHP
php截取字符串之截取utf8或gbk编码的中英文字符串示例
2014/03/12 PHP
46 个非常有用的 PHP 代码片段
2016/02/16 PHP
php 获取文件行数的方法总结
2016/10/11 PHP
Bootstrap+PHP实现多图上传功能实例详解
2018/04/08 PHP
laravel 查询数据库获取结果实现判断是否为空
2019/10/24 PHP
Javascript 判断Flash是否加载完成的代码
2010/04/12 Javascript
js获取单选框或复选框值及操作
2012/12/18 Javascript
jquery 事件冒泡的介绍以及如何阻止事件冒泡
2012/12/25 Javascript
jquery实现鼠标滑过小图时显示大图的方法
2015/01/14 Javascript
基于JavaScript将表单序列化类型的数据转化成对象的处理(允许对象中包含对象)
2015/12/28 Javascript
JS与Ajax Get和Post在使用上的区别实例详解
2016/06/08 Javascript
详细讲解vue2+vuex+axios
2017/05/27 Javascript
label+input实现按钮开关切换效果的实例
2017/08/16 Javascript
webpack之引入图片的实现及问题
2018/10/08 Javascript
微信小程序聊天功能的示例代码
2020/01/13 Javascript
记一次vue跨域的解决
2020/10/21 Javascript
[01:34:42]NAVI vs EG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
django自定义Field实现一个字段存储以逗号分隔的字符串
2014/04/27 Python
python检测远程服务器tcp端口的方法
2015/03/14 Python
Python3 加密(hashlib和hmac)模块的实现
2017/11/23 Python
在python中以相同顺序shuffle两个list的方法
2018/12/13 Python
Pycharm 实现下一个文件引用另外一个文件的方法
2019/01/17 Python
python3实现指定目录下文件sha256及文件大小统计
2019/02/25 Python
python占位符输入方式实例
2019/05/27 Python
Python 循环终止语句的三种方法小结
2019/06/24 Python
flask/django 动态查询表结构相同表名不同数据的Model实现方法
2019/08/29 Python
matplotlib 三维图表绘制方法简介
2020/09/20 Python
HTML+CSS3+JS 实现的下拉菜单
2020/11/25 HTML / CSS
俄罗斯在线水暖商店:Perfecto.ru
2019/10/25 全球购物
解释一下Windows的消息机制
2014/01/30 面试题
简单的项目建议书模板
2014/03/12 职场文书
竞争上岗实施方案
2014/03/21 职场文书
担保书范本
2015/01/20 职场文书
详解Python魔法方法之描述符类
2021/05/26 Python
python 单机五子棋对战游戏
2022/04/28 Python