python配置文件寫(xiě)入過(guò)程詳解
python配置文件有.conf,.ini,.txt等多種
python集成的 標(biāo)準(zhǔn)庫(kù)的 ConfigParser 模塊提供一套 API 來(lái)讀取和操作配置文件
我的配置文件如下
[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
當(dāng)我進(jìn)行讀寫(xiě)操作時(shí),發(fā)現(xiàn)
# 讀取配置文件
import ConfigParser
config = ConfigParser.ConfigParser()
config.readfp(open('GloVar.ini'))
a = config.get("CoarseAdjust","MD5")
print a
# 寫(xiě)入配置文件
import ConfigParser
config = ConfigParser.ConfigParser()
# set a number of parameters
config.add_section("CoarseAdjust")
config.set("CoarseAdjust", "xperangle", "1000")
config.set("CoarseAdjust", "yperangle", "500")
發(fā)現(xiàn)配置文件中的內(nèi)容并沒(méi)有發(fā)生改變,為什么?
上面的這種修改方式只是修改了python中內(nèi)存的值,并沒(méi)有對(duì)配置文件的內(nèi)容進(jìn)行修改,并真實(shí)地寫(xiě)入
真正地修改方式應(yīng)該是
"""修改并保存在配置文件中"""
# coding:utf-8
import configparser
# 創(chuàng)建管理對(duì)象
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里面對(duì)象是元祖
conf.write(open('GloVar.ini', "r+", encoding="utf-8")) # r+模式
ConfigParser 模塊需要注意的是
- 不能區(qū)分大小寫(xiě)。
- 重新寫(xiě)入的配置文件不能保留原有配置文件的注釋。
- 重新寫(xiě)入的配置文件不能保持原有的順序。
- 不支持嵌套。
- 不支持格式校驗(yàn)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python函數(shù)常見(jiàn)幾種return返回值類(lèi)型
本文主要介紹了Python函數(shù)常見(jiàn)幾種return返回值類(lèi)型,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
Python將8位的圖片轉(zhuǎn)為24位的圖片實(shí)現(xiàn)方法
這篇文章主要介紹了Python將8位的圖片轉(zhuǎn)為24位的圖片的實(shí)現(xiàn)代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-10-10
Python中常用信號(hào)signal類(lèi)型實(shí)例
這篇文章主要介紹了Python中常用信號(hào)signal類(lèi)型實(shí)例,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01
Pycharm最全報(bào)錯(cuò)的原因與解決方法總結(jié)(推薦!)
這篇文章主要給大家介紹了關(guān)于Pycharm最全報(bào)錯(cuò)的原因與解決方法的相關(guān)資料,文中記錄了Python各種報(bào)錯(cuò)解釋及處理方法,屬于個(gè)人記錄型,需要的朋友可以參考下2022-07-07
python使用代理IP爬取貓眼電影專(zhuān)業(yè)評(píng)分?jǐn)?shù)據(jù)
在編寫(xiě)爬蟲(chóng)程序的過(guò)程中,IP封鎖無(wú)疑是一個(gè)常見(jiàn)且棘手的問(wèn)題,盡管網(wǎng)絡(luò)上存在大量的免費(fèi)IP代理網(wǎng)站,但其質(zhì)量往往參差不齊,令人堪憂,本篇文章中介紹一下如何使用Python的Requests庫(kù)和BeautifulSoup庫(kù)來(lái)抓取貓眼電影網(wǎng)站上的專(zhuān)業(yè)評(píng)分?jǐn)?shù)據(jù),需要的朋友可以參考下2024-03-03
Python運(yùn)用于數(shù)據(jù)分析的簡(jiǎn)單教程
這篇文章主要介紹了Python運(yùn)用于數(shù)據(jù)分析的簡(jiǎn)單教程,主要介紹了如何運(yùn)用Python來(lái)進(jìn)行數(shù)據(jù)導(dǎo)入、變化、統(tǒng)計(jì)和假設(shè)檢驗(yàn)等基本的數(shù)據(jù)分析,需要的朋友可以參考下2015-03-03
使用Python+Flask開(kāi)發(fā)博客項(xiàng)目并實(shí)現(xiàn)內(nèi)網(wǎng)穿透
Flask是一個(gè)使用python編寫(xiě)的輕量級(jí)Web框架,這篇文章我們將使用這個(gè)框架編寫(xiě)一個(gè)屬于自己的博客網(wǎng)站!并教你如何通過(guò)使用內(nèi)網(wǎng)穿透工具處理項(xiàng)目,讓本地的項(xiàng)目可以在公網(wǎng)訪問(wèn),感興趣的可以了解一下2021-11-11
python使用tkinter實(shí)現(xiàn)透明窗體上繪制隨機(jī)出現(xiàn)的小球(實(shí)例代碼)
今天教大家怎么實(shí)現(xiàn)Tkinter透明窗體,在上篇文章給大家介紹過(guò)透明窗體上繪制小球,今天接著通過(guò)實(shí)例代碼給大家分享python使用tkinter實(shí)現(xiàn)透明窗體上繪制隨機(jī)出現(xiàn)的小球的實(shí)例代碼,感興趣的朋友跟隨小編一起看看吧2021-05-05
python實(shí)現(xiàn)人人網(wǎng)登錄示例分享
這篇文章主要介紹了python實(shí)現(xiàn)登錄人人網(wǎng)示例,大家參考使用吧2014-01-01

