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