最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python的ini配置文件你了解嗎

 更新時(shí)間:2022年03月09日 11:37:56   作者:代碼輸入中...  
這篇文章主要為大家詳細(xì)介紹了Python的ini配置文件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

INI介紹

INI是英文“初始化”(initialization)的縮寫,被用來對(duì)操作系統(tǒng)或特定程序初始化或進(jìn)行參數(shù)設(shè)置。由節(jié)(section)、

鍵(key)、值(value)構(gòu)成。在windows系統(tǒng)中有很多INI文件,例如“System32.ini”和“Win.ini”,相信大家并不陌生。Python

中操作配置文件的模塊為configparser,這個(gè)模塊可以用來解析與Windows上INI文件結(jié)構(gòu)類似的文件。

關(guān)于configparser

在python2中該模塊名為Configparser,到python3才改為configparser,該模塊是用來解析 ini 配置文件的解析器。

其作用就是使用模塊中的RawConfigParser()、ConfigParser()、SafeConfigParser()這三個(gè)方法(任選一種),創(chuàng)建一

個(gè)對(duì)象使用對(duì)象的方法對(duì)指定的配置文件做增刪改查操作。

本次使用的python版本為3.8,編譯器使用pycharm。

INI文件格式

INI配置文件組成:

section:表示一個(gè)區(qū)塊,由方括號(hào)及方括號(hào)中的名稱組成,section的范圍為當(dāng)前方括號(hào)到下一個(gè)方括號(hào)的內(nèi)容,如“DEFAULT”,“select”,“connect_mysql”。

  • 大小寫和空格檢查: section中的名稱在保存和獲取的時(shí)候是原樣保存和獲取的,即大小寫不一樣或者空格不一樣等都是不同的section;
  • 重復(fù)性檢查: 同一個(gè)配置文件中section名稱不允許重復(fù)。

option:表示section中的配置項(xiàng),由key、分隔符和value組成的鍵值對(duì),如“select”下的“broswer = Chrome”。

  • 大小寫檢查: key是大小寫不敏感的,保存進(jìn)文件的時(shí)候會(huì)自動(dòng)將key小寫保存,但value是大小寫敏感的;
  • 空格檢查: 通過key獲取value時(shí),會(huì)自動(dòng)將文件中的key和value前后空格去掉再進(jìn)行匹配,即文件中保存為'  broswer     = Chrome      '時(shí),用'broswer'也可以獲取到對(duì)應(yīng)的value值'Chrome';
  • 跨多行檢查: key是不能跨行的,但是value可以跨行,只要第二行及之后行的縮進(jìn)與第一行不同即可,一直到下一個(gè)option為止;
  • 重復(fù)性檢查: 和section一樣,同一section下的key是不允許重復(fù)的;
  • 分隔符: 可以是等號(hào)“=”或者冒號(hào)“:”。

注釋:行注釋用井號(hào)“#”或者分號(hào)“;”表示,特別需要注意的是必須得是行開頭(前面可以有空格),用在行中間的就不會(huì)算作是注釋了。

DEFAULT:這是一個(gè)特殊的section,會(huì)用作其他section的option取不到值時(shí)的備用值,或者可以理解為它是一個(gè)root,其他的section都是它的子section,但不是必須提供的。

讀取配置文件

import os
import configparser
conf = configparser.ConfigParser() # 類的實(shí)例化
curpath = os.path.dirname(os.path.realpath(__file__))
path = os.path.join(curpath,'read.ini')
conf.read(path,encoding="utf-8")
value = conf['select']['url']
print("通過read方法取得的值為:",value)
value = conf.get('login','username')
print('通過get方法取得的值:',value)
value = conf.items('login') # 讀取一個(gè)section中的所有數(shù)據(jù),返回一個(gè)列表
print("通過items方法取得的值:",value)
value = conf.getint('connect_mysql','port') # 指定讀取數(shù)據(jù)的類型
print("指定數(shù)據(jù)類型取出的值:",value)
section = conf.sections() # 讀取配置文件中所有section
print(section)

運(yùn)行結(jié)果

注意: 配置文件注釋有中文的,在python3中要加上參數(shù)encoding="utf-8",不然會(huì)報(bào)錯(cuò)。

conf.read(path,encoding="utf-8")

寫入配置文件

import os
import configparser
conf = configparser.ConfigParser() # 類的實(shí)例化
curpath = os.path.dirname(os.path.realpath(__file__))
path = os.path.join(curpath,'read.ini')
conf.add_section('login') # 添加一個(gè)新的section
conf.set('login','username','admin')
conf.set('login','password','123123')   # 往配置文件寫入數(shù)據(jù)
conf.write(open(path,'a'))  # 保存數(shù)據(jù)

運(yùn)行以后查看配置文件,可以看到新的section已經(jīng)寫入到文件中。

write寫入常用的兩種方式,第一種是刪除原文件內(nèi)容,重新寫入:w

conf.write(open(path,'w'))

第二種是在原文件基礎(chǔ)上繼續(xù)寫入內(nèi)容,追加模式寫入:a

conf.write(open(path,'a'))

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!      

相關(guān)文章

  • python3 wechatpy微信支付的項(xiàng)目實(shí)踐

    python3 wechatpy微信支付的項(xiàng)目實(shí)踐

    本文主要介紹了python3 wechatpy微信支付的項(xiàng)目實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • Python批量裁剪圖片的思路詳解

    Python批量裁剪圖片的思路詳解

    這篇文章主要介紹了Python批量裁剪圖片的程序代碼,是批量裁剪某一文件夾下的所有圖片,并指定裁剪寬高,本文給大家分享實(shí)現(xiàn)思路,需要的朋友可以參考下
    2022-07-07
  • Python爬蟲之批量下載喜馬拉雅音頻

    Python爬蟲之批量下載喜馬拉雅音頻

    今天教大家如何利用Python爬蟲批量下載喜馬拉雅音頻,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們很有幫助,需要的朋友可以參考下
    2021-05-05
  • Python學(xué)習(xí)之12個(gè)常用基礎(chǔ)語法詳解

    Python學(xué)習(xí)之12個(gè)常用基礎(chǔ)語法詳解

    這篇文章主要為大家介紹了12個(gè)Python小案例,包含了日常開發(fā)中非常實(shí)用的語法,快來跟隨小編一起學(xué)習(xí)一下,看看自己都會(huì)多少個(gè)呢
    2022-02-02
  • 利用python循環(huán)創(chuàng)建多個(gè)文件的方法

    利用python循環(huán)創(chuàng)建多個(gè)文件的方法

    今天小編就為大家分享一篇利用python循環(huán)創(chuàng)建多個(gè)文件的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • python 運(yùn)用Django 開發(fā)后臺(tái)接口的實(shí)例

    python 運(yùn)用Django 開發(fā)后臺(tái)接口的實(shí)例

    今天小編就為大家分享一篇python 運(yùn)用Django 開發(fā)后臺(tái)接口的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • 用python代碼做configure文件

    用python代碼做configure文件

    在lua中,我一直用lua作為config文件,或者承載數(shù)據(jù)的文件 - 好處是lua本身就很好閱讀,然后無需額外寫解析的代碼,還支持在configure文件中讀環(huán)境變量,條件判斷等,方便又強(qiáng)大!
    2014-07-07
  • Python使用pandas和openpyxl讀取Excel表格的方法詳解

    Python使用pandas和openpyxl讀取Excel表格的方法詳解

    這篇文章主要介紹了Python讀取Excel表格數(shù)據(jù)的方法,Python提供了多種讀取Excel文件的方式,最常用的庫(kù)是pandas和openpyxl,下面我將詳細(xì)介紹如何使用這兩個(gè)庫(kù)來讀取Excel文件,并包含一些實(shí)用示例,需要的朋友可以參考下
    2024-10-10
  • Python安裝pygit2失敗問題及解決

    Python安裝pygit2失敗問題及解決

    這篇文章主要介紹了Python安裝pygit2失敗問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Python中類創(chuàng)建和實(shí)例化的過程詳解

    Python中類創(chuàng)建和實(shí)例化的過程詳解

    這篇文章主要介紹了Python中類創(chuàng)建和實(shí)例化過程,文中通過代碼示例講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-06-06

最新評(píng)論

浪卡子县| 宿迁市| 廉江市| 呈贡县| 收藏| 西乌珠穆沁旗| 澎湖县| 五河县| 博白县| 原阳县| 土默特左旗| 英超| 丁青县| 习水县| 莲花县| 宁波市| 景谷| 恩施市| 庆安县| 高清| 佛山市| 河曲县| 永胜县| 迁西县| 大理市| 庄河市| 桐乡市| 舞阳县| 攀枝花市| 伊金霍洛旗| 桂林市| 白河县| 曲周县| 化德县| 桐庐县| 遂平县| 邵武市| 德化县| 绥棱县| 乌鲁木齐市| 海城市|