python配置文件写入过程详解


Posted in Python onOctober 19, 2019

python配置文件有.conf,.ini,.txt等多种

python集成的 标准库的 ConfigParser 模块提供一套 API 来读取和操作配置文件

我的配置文件如下

[MOTOR]
comnum = 3
baud = 19200
m1slowstep = 10
m1faststep = 100
m1origin = 5
m2slowstep = 10
m2faststep = 50
m2origin = 5

[CoarseAdjust]
standardx = 0.000000
standardy = 0.000000
xperangle = 500
yperangle = 160
xmotor = 1
xmotororien = -1
ymotor = 2
ymotororien = 1
triggermode = 1
triggertimeout = 1
autoadjust = 1

[FineAdjust]
countdown = 10
datfilepath = E:\Mcs05\DatTemp\
xfinestep = 10
yfinestep = 10
mcsfilepath = E:\Mcs05\WHTest\
filetype = Mcs
nastartaltitude = 80
naendaltitude = 111
rayleighstartaltitude = 20
rayleighendaltitude = 60
fineadjustfilepath = E:\Mcs05\
methodselect = 01

[EASYMCS]
chname = WHTest
prefixion = R
mcstheshold = 1.4
numofbins = 2048
binwidth = 640
numofpluse = 30
mcs32path = D:\software\MCS32\
mcs32filepath = E:\Mcs05\

[GYRO]
comno = 15
baud = 9600

当我进行读写操作时,发现

# 读取配置文件
import ConfigParser
config = ConfigParser.ConfigParser()
config.readfp(open('GloVar.ini'))
a = config.get("CoarseAdjust","MD5")
print a

# 写入配置文件
import ConfigParser
config = ConfigParser.ConfigParser()
# set a number of parameters
config.add_section("CoarseAdjust")
config.set("CoarseAdjust", "xperangle", "1000")
config.set("CoarseAdjust", "yperangle", "500")

发现配置文件中的内容并没有发生改变,为什么?

上面的这种修改方式只是修改了python中内存的值,并没有对配置文件的内容进行修改,并真实地写入

真正地修改方式应该是

"""修改并保存在配置文件中"""
# coding:utf-8
import configparser

# 创建管理对象
conf = configparser.ConfigParser()
conf.read('GloVar.ini', encoding='utf-8')
print(conf.sections())

# 往section添加key和value
conf.set("CoarseAdjust", "xPerAngle", "{}".format(500))
conf.set("CoarseAdjust", "yPerAngle", "160")
items = conf.items('CoarseAdjust')
print(items) # list里面对象是元祖

conf.write(open('GloVar.ini', "r+", encoding="utf-8")) # r+模式

ConfigParser 模块需要注意的是

  • 不能区分大小写。
  • 重新写入的配置文件不能保留原有配置文件的注释。
  • 重新写入的配置文件不能保持原有的顺序。
  • 不支持嵌套。
  • 不支持格式校验

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 算法 排序实现快速排序
Jun 05 Python
详解Python中__str__和__repr__方法的区别
Apr 17 Python
python Pygame的具体使用讲解
Nov 03 Python
Python实现基本数据结构中队列的操作方法示例
Dec 04 Python
python决策树之C4.5算法详解
Dec 20 Python
详解python字节码
Feb 07 Python
Python实现字典(dict)的迭代操作示例
Jun 05 Python
修改python plot折线图的坐标轴刻度方法
Dec 13 Python
对Python3 * 和 ** 运算符详解
Feb 16 Python
centos7之Python3.74安装教程
Aug 15 Python
python中用logging实现日志滚动和过期日志删除功能
Aug 20 Python
Pytorch之view及view_as使用详解
Dec 31 Python
python实现广度优先搜索过程解析
Oct 19 #Python
python字符串格式化方式解析
Oct 19 #Python
基于python3监控服务器状态进行邮件报警
Oct 19 #Python
使用python绘制温度变化雷达图
Oct 18 #Python
详解numpy矩阵的创建与数据类型
Oct 18 #Python
Python 3.6打包成EXE可执行程序的实现
Oct 18 #Python
详解pyinstaller selenium python3 chrome打包问题
Oct 18 #Python
You might like
利用PHP+JS实现搜索自动提示(实例)
2013/06/09 PHP
PHP字符串的递增和递减示例介绍
2014/02/11 PHP
PHP 5.3新增魔术方法__invoke概述
2014/07/23 PHP
Yii2中关联查询简单用法示例
2016/08/10 PHP
PHP架构及原理知识点详解
2019/12/22 PHP
prototype 源码中文说明之 prototype.js
2006/09/22 Javascript
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
jquery在Chrome下获取图片的长宽问题解决
2013/03/20 Javascript
javascript事件函数中获得事件源的两种不错方法
2014/03/17 Javascript
jQuery oLoader实现的加载图片和页面效果
2015/03/14 Javascript
JavaScript操作HTML元素和样式的方法详解
2015/10/21 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
JS设计模式之访问者模式定义与用法分析
2018/02/05 Javascript
收集前端面试题之url、href、src
2018/03/22 Javascript
基于Vue的延迟加载插件vue-view-lazy
2018/05/21 Javascript
利用vue.js把静态json绑定bootstrap的table方法
2018/08/28 Javascript
AjaxFileUpload.js实现异步上传文件功能
2019/04/19 Javascript
JavaScript ES6 Class类实现原理详解
2020/05/08 Javascript
[03:16]DOTA2完美大师赛主赛事首日集锦
2017/11/23 DOTA
Python新手实现2048小游戏
2015/03/31 Python
Python实现快速多线程ping的方法
2015/07/15 Python
安装ElasticSearch搜索工具并配置Python驱动的方法
2015/12/22 Python
简单谈谈Python中函数的可变参数
2016/09/02 Python
Python信息抽取之乱码解决办法
2017/06/29 Python
Django 数据库同步操作技巧详解
2019/07/19 Python
解决jupyter运行pyqt代码内核重启的问题
2020/04/16 Python
纽约通行卡:The New York Pass(免费游览纽约90多个景点)
2017/07/29 全球购物
新英格兰最大的特色礼品连锁店:The Paper Store
2018/07/23 全球购物
Orvis官网:自1856年以来,优质服装、飞钓装备等
2018/12/17 全球购物
POS解决方案:MUNBYN(热敏打印机、条形码扫描仪)
2020/06/09 全球购物
运动会致辞稿50字
2014/02/04 职场文书
《中华少年》教学反思
2014/02/15 职场文书
新闻编辑求职信
2014/04/09 职场文书
2014机关干部学习“焦裕禄精神”思想汇报
2014/09/19 职场文书
2016年度优秀辅导员事迹材料
2016/02/26 职场文书
goland 设置project gopath的操作
2021/05/06 Golang