Python读取配置文件(config.ini)以及写入配置文件
作者:songlh1234 发布时间:2021-01-28 14:02:39
标签:Python,配置,文件,config.ini
一、读取配置文件
我的目录如下,在config下有一个config.ini配置文件
配置文件内容
# 定义config分组
[config]
platformName=Android
appPackage=com.romwe
appActivity=com.romwe.SplashActivity
# 定义cmd分组
[cmd]
viewPhone=adb devices
startServer=adb start-server
stopServer=adb kill-server
install=adb install aaa.apk
id=1
weight=12.1
isChoice=True
# 定义log分组
[log]
log_error=true
在test001.py中编写读取配置文件的脚本代码
import configparser
# 实例化configParser对象
config = configparser.ConfigParser()
# -read读取ini文件
config.read('C:\\Users\\songlihui\\PycharmProjects\\AutoTest_02\\config\\config.ini', encoding='GB18030')
# -sections得到所有的section,并以列表的形式返回
print('sections:' , ' ' , config.sections())
# -options(section)得到该section的所有option
print('options:' ,' ' , config.options('config'))
# -items(section)得到该section的所有键值对
print('items:' ,' ' ,config.items('cmd'))
# -get(section,option)得到section中option的值,返回为string类型
print('get:' ,' ' , config.get('cmd', 'startserver'))
# -getint(section,option)得到section中的option的值,返回为int类型
print('getint:' ,' ' ,config.getint('cmd', 'id'))
print('getfloat:' ,' ' , config.getfloat('cmd', 'weight'))
print('getboolean:' ,' ', config.getboolean('cmd', 'isChoice'))
"""
首先得到配置文件的所有分组,然后根据分组逐一展示所有
"""
for sections in config.sections():
for items in config.items(sections):
print(items)
运行test001.py文件,展示结果如下
二、写入配置文件
import configparser
# 实例化configParser对象
config = configparser.ConfigParser()
# -read读取ini文件
config.read('C:\\Users\\songlihui\\PycharmProjects\\AutoTest_02\\config\\config.ini', encoding='GB18030')
list = []
list = config.sections()# 获取到配置文件中所有分组名称
if 'type' not in list:# 如果分组type不存在则插入type分组
config.add_section('type')
config.set('type', 'stuno', '10211201')# 给type分组设置值
config.remove_option('type', 'stuno')# 删除type分组的stuno
config.remove_section('tpye')# 删除配置文件中type分组
o = open('C:\\Users\\songlihui\\PycharmProjects\\AutoTest_02\\config\\config.ini', 'w')
config.write(o)
o.close()#不要忘记关闭
写入和删除的操作全在代码中了,有详细的注释。不过写入的时候一定要添加判断,否则如果已经存在的话继续添加会报异常!!!!!!!!!
来源:https://blog.csdn.net/songlh1234/article/details/83316468


猜你喜欢
- 此处以修改图片文件名为例,将图片复制到新的目录中再修改名称~原始文件名如下:修改后的效果如下:代码:实现将one文件夹中的每一个图片复制到t
- 有时候我们的数据是按某个频率收集的,比如每日、每月、每15分钟,那么我们怎么产生对应频率的索引呢?pandas中的date_range可用于
- MySQL多表join时报错如下:[Err]1267 – Illegal mix of collations(utf8_general_ci
- 好的,现在来看如何生成FullPath: DECLARE @tbl TABLE ( Id int ,ParentId int ) INSER
- 写程序必然需要版本控制,哪怕是个人项目也是必须的,VS2015开始默认提供了对Git的支持。考虑到现在Git很火,作为微软系的程序员也不得不
- 先新建一组散点充当坐标轴为了比较直观地展示旋转过程,这里通过散点来新建三个坐标轴,通过对这三个坐标轴的转动,来直观地展现转动矩阵对坐标变换的
- Vue使用Swiper看这一篇就够了此案例实现需求完成swiper动态异步数据下的slide渲染自定义分页器样式解决loop:true设置时
- 首先介绍一下import和include的区别或者说import相对include的好处:import导入的内容只会被包含一次,在引入之前会
- 1.我们可以为每一个实例对象增加方法。也就是说我们在每次使用‘类'之外的方法时候,都需要创建一次。 function D
- 给zblog添加上“运行代码”的功能,这是“密陀僧”修改z-blog源码,给z-bog增添的新功能。这个方法出来很久了,我现在才加上还不晚吧
- 本文实例讲述了Go语言函数基本用法。分享给大家供大家参考,具体如下:这里要说一下是Go函数和一些其他语言不一样的地方1 函数格式不同func
- Labelme简要介绍通过labelme对图进行标注后,得到的是json文件,而Yolov5对数据进行模型构建的时候,读取需要的是txt格式
- reflect.StructField 和 reflect.Method如果变量是一个结构体,我们还可以通过结构体域类型对象 reflect
- 本文实例讲述了C#窗体读取EXCEL并存入SQL数据库的方法。分享给大家供大家参考。具体实现方法如下:windows窗体上放了一个Textb
- 最近在研究python调度框架APScheduler使用的路上,那么今天也算个学习笔记吧!# coding=utf-8""
- 首先我们一起来看下 Character entities references (HTML Entities)和 Numeric Chara
- 1、安装 python3sudo apt install python32、卸载 python2.7 (可选)sudo apt remove
- MYSQL与SQLserver之间存储过程的转换首先先放两个存储过程来进行对比mysql存储过程CREATE DEFINER=`root`@
- 什么是词干提取?在语言形态学和信息检索里,词干提取是去除词缀得到词根的过程─—得到单词最一般的写法。对于一个词的形态词根,词干并不需要完全相
- <?php /** +------------------------------------------------ * 通用的树型