yaml/json/ini 配置读取
ConfigParser 安装
ConfigParser 是解析配置文件的第三方库,须要安装 pip install ConfigParser
pip install ConfigParser
ConfigParser 介绍
ConfigParser是用来读取配置文件(能够是.conf,txt,ini)的包
配置文件的格式如下:中括号'[]'内包含的为section。section下面为option,相似于key-value的配置内容
ConfigParser 常见函数
-read(filename)直接读取配置文件内容
-sections()获得全部的section,并以列表的形式返回
-options(section)获得该section的全部的option
-items(section)获得该section的全部键值对
-get(section,option)获得section中optiond的值,返回为string类型
-getint(section,option) 获得section中option的值,返回为int类型,还有相应的getboolean()和getfloat() 函数。
Configparser用法
t2.ini
[db]
db_host = 127.0.0.1
db_port = 22
db_user = root
db_pass = rootroot
[concurrent]
thread = 10
processor = 20
t1.py
from configparser import ConfigParser
# 创建一个配置解析器对象
config = ConfigParser()
# 读取配置文件
config.read('t2.ini')
# 获取全部sections。也就是将配置文件中全部'[]'读取到列表中
data = config.sections()
print('section:', data)
# 获取指定section的options。即将配置文件某个section内key读取到列表中
data2 = config.options('db')
print('options:',data2)
# 获取指定section的全部配置信息。返回列表,列表的元素是key,value组成的元组
data3 = config.items('db')
print('db',data3)
# 按照类型读取指定section的option信息
db_host = config.get('db','db_host')
print(db_host)
# 当查找不到指定的section或者option时,会抛出异常
try:
db_host1 = config.get('db', 'db_host1')
print(db_host1)
except Exception as e:
print(e)

Yaml读取配置文件
import yaml
with open('t4.yaml', 'r') as f:
config = yaml.safe_load(f)
# 访问配置项的值
value = config['DEFAULT']['some_option']
print(f'The value of some_option is: {value}')
DEFAULT:
some_option: 'LuckyleTop'

Json读取配置文件
import json
with open('t5.json', 'r',encoding='utf-8') as f:
config = json.load(f)
# 访问配置项的值
value = config['DEFAULT']['some_option']
print(f'The value of some_option is: {value}')
{
"DEFAULT": {
"some_option": "无敌潇洒"
}
}

yaml/json/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 ...
- .ini配置读取
ini文件的格式 格式 INI文件由节.键.值组成. 节 [section] 参数(键=值) name=value 注解 注解使用分号表示(;).在分号后面的文字,直到该行结尾都全部为注解. ...
- Go-如何读取yaml,json,ini等配置文件
1. json使用 JSON 应该比较熟悉,它是一种轻量级的数据交换格式.层次结构简洁清晰 ,易于阅读和编写,同时也易于机器解析和生成. 创建 conf.json: { "enabled&q ...
- 配置文件yaml和ini
前言 本文主要介绍配置文件yaml和ini的读取. 一.yaml文件 YAML是一个可读性高,易于理解,用来表达数据序列化的格式.语法与python的语法类似.文件后缀 .yaml 下面是yaml文 ...
- yaml配置和ini配置的数据源配置和数据获取
1.前言 关于yaml和ini的相关理论暂不做记录,不影响代码编写,百度即可. 2.关于配置文件的选择 yaml 和 ini 都使用过, 但是yaml更符合人类使用,已要弃用ini,后期各项目均采用y ...
- 【ASP.NET Core快速入门】(五)命令行配置、Json文件配置、Bind读取配置到C#实例、在Core Mvc中使用Options
命令行配置 我们通过vs2017创建一个控制台项目CommandLineSample 可以看到现在项目以来的是dotnet core framework 我们需要吧asp.net core引用进来,我 ...
- 菜鸟入门【ASP.NET Core】5:命令行配置、Json文件配置、Bind读取配置到C#实例、在Core Mvc中使用Options
命令行配置 我们通过vs2017创建一个控制台项目CommandLineSample 可以看到现在项目以来的是dotnet core framework 我们需要吧asp.net core引用进来 ...
- Python中yaml和json文件的读取和应用
Python对yaml和json文件的读取: yaml文件读取: 首先创建一个yaml文件test.yaml import yaml #引入包 f=open(path) #建立Python的文件 ...
- golang 读取 ini配置信息
package main //BY: 29295842@qq.com//这个有一定问题 如果配置信息里有中文就不行//[Server] ;MYSQL配置//Server=localhost ...
随机推荐
- Python 在PDF中生成水印
前言 在PDF中插入水印是比较常用的一种功能.一般在生成比较重要的,或者需要注明版权.作者的文档时使用比较多. 这里我将分享一个通过python代码为PDF文档添加水印的办法(包括文本水印和图像水印) ...
- SQL Server 2000 创建角色,登陆用户,安全用户,批量授予权限
前言 我在2011年刚入门学习的时候,是从 SQL Server 2008 开始学的,再加上这些年较少接触 SQL Server 2000,因此对它不是很熟. 之前都是在 SQL Server 200 ...
- python之range()、arange()和linspace()
目录 range() arange() linspace() range() range()格式如:range(start, stop, step) start:开始的数值,默认从0开始 stop:结 ...
- mysql--基础管理
1.docker环境登录mysql PS C:\WINDOWS\system32> docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS P ...
- 全面的.NET微信网页开发之JS-SDK使用步骤、配置信息和接口请求签名生成详解
JSSDK使用步骤 步骤一:绑定安全域名: 先登录微信公众平台进入"公众号设置"的"功能设置"里填写"JS接口安全域名". 步骤二:引入JS ...
- .NET8 依赖注入
依赖注入(Dependency Injection,简称DI)是一种设计模式,用于解耦组件(服务)之间的依赖关系.它通过将依赖关系的创建和管理交给外部容器来实现,而不是在组件(服务)内部直接创建依赖对 ...
- [AGC038E] Gachapon
Problem Statement Snuke found a random number generator. It generates an integer between $0$ and $N- ...
- Rong晔大佬教程学习(1):背景与项目设计目标
riscv实际上是一种ISA的指令集,而处理器的设计的基本结构是不变的(如下所示),其区别在于所选用的指令集的类型,一般有ARM.RISCV.MIPS等,采用了不同的引擎,那么车的外观.系统等也会随之 ...
- 将多个txt文件中的内容写在一个txt中的方法
import os filename='./train_data/img_' for i in range(1,19736): newfile=filename+str(i)+'.txt' if os ...
- 【eBPF-02】入门:基于 BCC 框架的程序进阶
本文是 eBPF 系列的第二篇文章,我们来学习 eBPF BCC 框架的进阶用法,对上一篇文章中的代码进行升级,动态输出进程运行时的参数情况. 主要内容包括: 通过 kprobe 挂载内核事件的 eB ...