python配置文件写入过程详解
作者:鲲鹏展翅高飞 发布时间:2021-02-06 01:46:19
标签:python,配置,文件,写入
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 模块需要注意的是
不能区分大小写。
重新写入的配置文件不能保留原有配置文件的注释。
重新写入的配置文件不能保持原有的顺序。
不支持嵌套。
不支持格式校验
来源:https://www.cnblogs.com/hkpcn/p/11703267.html


猜你喜欢
- /usr/sbin/groupadd mysql/usr/sbin/useradd -g mysql mysqlunzip mysql-5.
- ACCESS数据库中Field对象的caption属性(也就是标题)是用来设置数据字段的标题,在正常的数据库设计中为了保持维护的便利性,许多
- 常用的代码UPDATE `表名` SET `字段名`=ceiling(rand()*500000+500000) WHERE (条件);up
- 1. viper的介绍viper是go一个强大的流行的配置解决方案的库。viper是spf13的另外一个重量级库。有大量项目都使用该库,比如
- 本文实例讲述了Python3.5编程实现修改IIS WEB.CONFIG的方法。分享给大家供大家参考,具体如下:#!/usr/bin/env
- 前言最近更新了Python版本,准备写个爬虫,意外的发现urllib库中属性不存在urlopen,于是各种google,然后总结一下给出解决
- 本文实例讲述了php延迟静态绑定的方法。分享给大家供大家参考。具体分析如下:php延迟静态绑定:指类的self,不是以定义时为准,而是以计算
- 搭建FTP,或者是搭建网络文件系统,这些方法都能够实现Linux的目录共享。但是FTP和网络文件系统的功能都过于强大,因此它们都有一些不够方
- df.dropna()函数用于删除dataframe数据中的缺失数据,即 删除NaN数据.官方函数说明:DataFrame.dropna(a
- numpy数组转置可以通过arr.T、arr.transpose()、arr.swapaxes()实现。数组转置 arr.T轴变换 arr.
- 使用python脚本实现查询火车票信息的效果图如下:实现的代码:# coding: utf-8"""命令行火车
- 本文实例讲述了Python使用scrapy抓取网站sitemap信息的方法。分享给大家供大家参考。具体如下:import refrom sc
- 在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很多参数,这些参数包括横纵坐标轴范围、坐标轴刻度大小、坐标轴名称等 在mat
- 首先我们来看个示例:<form name="buyerForm" method="post"
- Python传入参数的方法有:位置参数、默认参数、可变参数、关键字参数、和命名关键字参数、以及各种参数调用的组合写在前面Python唯一支持
- 一、获取Tensor神经网络在运算过程中实际上是以Tensor为格式进行计算的,我们只需稍稍改动一下forward函数即可从运算过程中抓到T
- 操作系统会为每一个创建的进程分配一个独立的地址空间,不同进程的地址空间是完全隔离的,因此如果不加其他的措施,他们完全感觉不到彼此的存在。那么
- 介绍最近在研究目标检测方面的小东西,需要到对桌面进行实时捕捉画面,获取画面后再检测,达到实时桌面目标检测的目的,所以写了一段小代码来实现该功
- 在很多企业会使用闲置的 Windows 机器作为临时服务器,有时候我们想远程调用里面的程序或查看日志文件Windows 内置的服务
- 客户强烈要求使用淘宝的首页商品分类效果,很BT~,没辙就满足一下人家的需求。通过淘宝案例,立即想到了显示/隐藏层的效果,于是在DW中画了几个