配置文件yaml和ini
前言
本文主要介绍配置文件yaml和ini的读取。
一、yaml文件
YAML是一个可读性高,易于理解,用来表达数据序列化的格式。语法与python的语法类似。文件后缀 .yaml
下面是yaml文件的举例说明:
- 以类似key-value的形式,蓝色字体的是key,绿色字体的是value
- 冒号:的后面要打一个空格,不然识别不到
- value的值如果是字符串,建议加上引号
- 如果value是字典,可以按照下面的两种方式存储
- 如果value是一个列表,需要在前面加上 “-” 或者以列表的形式 [1,2,3] 存储

需要安装第三方库,pip install pyyaml
代码如下:
import yaml def yaml_read():
with open("./read.yaml",encoding="utf8")as f:
m = yaml.safe_load(f)
return m m = yaml_read()
print(m)
读取的结果:
{
'url': 'www.baidu.com',
'database': {'user': 'root', 'password': '123456'},
'db2':
{'user': 'root',
'password': '123456',
'w': 1111},
'list1': [1, 2, 3],
'list2': [1, 2, 3]
}
二、ini文件
ini文件的后缀名为“.ini”。如下所示为ini文件的举例说明
- 以key-value形式存储,等号前面是Key,等号后面是value
- 所有的value都为字符串
- []中的是分组section,文件中有一个默认的分组default,key是option

文件代码,需要导入python内置的configparser库
import configparser def ini_read():
parser = configparser.ConfigParser()
#通过解析器对象读取文件
parser.read("read.ini",encoding="utf8")
#获取数据
data=parser.get("db","user")
return data data = ini_read()
print(data)
ini配置文件的缺点
- 需要频繁通过section和option参数获取值
- 支持的数据类型有限,需要通过类型转换获取相应的数据
配置文件yaml和ini的更多相关文章
- Golang 入门系列(九) 如何读取YAML,JSON,INI等配置文件
实际项目中,读取相关的系统配置文件是很常见的事情.今天就来说一说,Golang 是如何读取YAML,JSON,INI等配置文件的. 1. json使用 JSON 应该比较熟悉,它是一种轻量级的数据交换 ...
- yaml,json,ini这三种格式用来做配置文件优缺点
适合人类编写:ini > toml > yaml > json > xml > plist可以存储的数据复杂度:xml > yaml > toml ~ jso ...
- Go-如何读取yaml,json,ini等配置文件
1. json使用 JSON 应该比较熟悉,它是一种轻量级的数据交换格式.层次结构简洁清晰 ,易于阅读和编写,同时也易于机器解析和生成. 创建 conf.json: { "enabled&q ...
- 配置文件操作(ini、cfg、xml、config等格式)
配置文件的格式主要有ini.xml.config等,现在对这些格式的配置文件的操作(C#)进行简单说明. INI配置文件操作 调用系统函数GetPrivateProfileString()和Write ...
- mongodb3.2配置文件yaml格式 详解
mongodb3.x版本后就是要yaml语法格式的配置文件,下面是yaml配置文件格式如下:官方yaml配置文件选项参考:https://docs.mongodb.org/manual/ ... #c ...
- PHP 错误与异常 笔记与总结(3)PHP 配置文件(php.ini)中与错误相关的选项 与 设置错误级别
[PHP 配置文件中与错误相关的选项 ] 选项 描述 error_reporting 设置错误报告的级别 display_errors 是否显示错误 log_errors 设置是否将错误信息记录到日志 ...
- springBoot第二种配置文件yaml书写方式及读取数据、整合myBatis和整合junit
一.yaml文件格式:key-value形式:可以表示对象 集合 1.语法:key:value 冒号后面必须跟一个空格再写value值 key1: key2: key3:value 2.属性取值:a. ...
- .NET程序配置文件操作(ini,cfg,config)
在程序开发过程中,我们一般会用到配置文件来设定一些参数.常见的配置文件格式为 ini, xml, config等. INI .ini文件,通常为初始化文件,是用来存储程序配置信息的文本文件. [Log ...
- Linux下用C读取配置文件。类似ini这样。
Introduction ccl is the customizable configuration library, a collection of functions for applicatio ...
随机推荐
- Luogu2375 [NOI2014]动物园 (KMP)
写炸,上网,不同KMP形态. 无力,照该,一换写法就过. 横批:我是垃圾 求\(next\)时\(DP\)出\(num\),路径压缩防卡\(n^2\) AC #include <iostream ...
- Luogu2915 [USACO08NOV]奶牛混合起来Mixed Up Cows (状压DP)
枚举末位状态 #include <iostream> #include <cstdio> #include <cstring> #include <algor ...
- Web 前端实战:Gitee 贡献图
前言 这次要做的 Web 前端实战是一个 Gitee 个人主页下的贡献图(在线 Demo),偶尔做一两个,熟悉熟悉 JS 以及 jQ.整体来说这个案例并不难,主要是控制第一个节点以及最后一个节点处于星 ...
- rcu的学习记录
crash> p rcu_sched_state.node[0] $13 = { lock = { raw_lock = { slock = 748760225 } }, gpnum = 211 ...
- 【问题解决】npm ERR! code EINTEGRITY
问题说明 Jenkins构建前端安装依赖报错: npm ERR! code EINTEGRITY 11:05:42 npm ERR! sha512-IJy2B5Ot9wIAGwjSKF94+8yhVC ...
- JCEF 初体验,window系统构建jar包
前言 本文记录如何通过jcef源代码去构建自己所需要的jar包,此文章构建的为windows64位jcef 的 jar 包,若需要构建 32 位的 jar 包,则需要按照文章将相关准备软件设置为 32 ...
- 荣获 Neo4j Certified Professional
在学习 Neo4j 的过程中,偶然得知官方的认证考试,所以当时就决定通过这项考试,功夫不负有心人,我成功的拿到了Neo4j Certified Professional认证证书 关于认证途径,请访问链 ...
- vue简单的请求api并渲染到表格
环境 vue3.11 组件库 https://element-plus.gitee.io/#/zh-CN 开始 初始化一个项目 App.vue <template> <div> ...
- 跟羽夏学 Ghidra ——窗口
写在前面 此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...
- 从 Hadoop 到云原生, 大数据平台如何做存算分离
Hadoop 的诞生改变了企业对数据的存储.处理和分析的过程,加速了大数据的发展,受到广泛的应用,给整个行业带来了变革意义的改变:随着云计算时代的到来, 存算分离的架构受到青睐,企业开开始对 Hado ...