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 ...
随机推荐
- mysql 代码适配 postgresql 适配改写,优化案例(行转列 + 标量子查询改写)
最近在适配个MySQL应用的项目,各种SQL改成PG兼容的语法真的是脑壳痛,今天遇到个有意思的案例. 原 MySQL SQL语句: SELECT DISTINCT l.MALL_NAME '项目', ...
- mediakit 源码 轻微微 学习总结
mediakit 源码 轻微微 学习总结 概要 项目地址:https://github.com/ZLMediaKit/ZLMediaKit 此项目我们把他做为一个流媒体服务器,我们会有srt和rtsp ...
- source insight 中添加指定类型文件
以下为source insight 3.X版本的设置方法: source insight 中过滤某些格式的文件. 建立source insight工程后,先暂时不要急于添加文件. 打开options- ...
- JavaScript高级程序设计笔记03 语言基础
语言基础 主要基于ES6. 一切都区分大小写.无论变量.函数名还是操作符 标识符 变量名.函数名.属性名.参数名 可由一个或多个字符组成: 第一个必须是字母._或者$: 其余的可以是字母._.$或者数 ...
- .Net8 Blazor 尝鲜
全栈 Web UI 随着 .NET 8 的发布,Blazor 已成为全堆栈 Web UI 框架,可用于开发在组件或页面级别呈现内容的应用,其中包含: 用于生成静态 HTML 的静态服务器呈现. 使用 ...
- 微信小程序记住密码,让登录解放双手
密码是用户最重要的数据,也是系统最需要保护的数据,我们在登录的时候需要用账号密码请求登录接口,如果用户勾选记住密码,那么下一次登录时,我们需要将账号密码回填到输入框,用户可以直接登录系统.我们分别对这 ...
- UIPath初识和安装
即使没有人为你鼓掌,也要优雅的谢幕,感谢自己的认真付出. 一. UiPath组成 学习UiPath,我们一定先要了解Studio,Robot和Orchestrator这3个重要组成部分. UiPa ...
- 向“创新者”升阶,程序员当下如何应对 AI 的挑战
随着 AI 技术的飞速发展,特别是大模型的出现,传统的程序员角色正在经历深刻的变革,我们不得不重新对自己进行审视和思考. 通用领域大模型的"泛化能力" 在过去的二十年内,AI 领域 ...
- Salesforce LWC学习(四十六) 自定义Datatable实现cell onclick功能
本篇参考:https://developer.salesforce.com/docs/component-library/bundle/lightning-datatable 背景:我们有时会有这种类 ...
- [USACO2007OPENS] Fliptile S
题目描述 FJ 知道,智商高的奶牛产奶量也大,所以他为奶牛们准备了一个翻动瓦片的益智游戏. 在一个 \(M \times N\) 的方阵上(\(1 \leq M,N \leq 15\)),每个格子都有 ...