溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python中configparser模塊的案例分析

發(fā)布時(shí)間:2020-08-15 11:42:24 來(lái)源:億速云 閱讀:160 作者:小新 欄目:開(kāi)發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)Python中configparser模塊的案例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

一、configparser模塊是什么

可以用來(lái)操作后綴為 .ini 的配置文件;

python標(biāo)準(zhǔn)庫(kù)(就是python自帶的意思,無(wú)需安裝)

二、configparser模塊基本使用

2.1 讀取 ini 配置文件

#存在 config.ini 配置文件,內(nèi)容如下:
[DEFAULT]
excel_path = ../test_cases/case_data.xlsx
log_path = ../logs/test.log
log_level = 1

[email]
user_name = 32@qq.com
password = 123456

使用configparser模塊讀取配置文件

import configparser

#創(chuàng)建配置文件對(duì)象
conf = configparser.ConfigParser()
#讀取配置文件
conf.read('config.ini', encoding="utf-8")
#列表方式返回配置文件所有的section
print( conf.sections() )  #結(jié)果:['default', 'email']
#列表方式返回配置文件email 這個(gè)section下的所有鍵名稱
print( conf.options('email') )  #結(jié)果:['user_name', 'password']
#以[(),()]格式返回 email 這個(gè)section下的所有鍵值對(duì)
print( conf.items('email') )  #結(jié)果:[('user_name', '32@qq.com'), ('password', '123456')]
#使用get方法獲取配置文件具體的值,get方法:參數(shù)1-->section(節(jié)) 參數(shù)2-->key(鍵名)
value = conf.get('default', 'excel_path')
print(value)

2.2 寫(xiě)入 ini 配置文件(字典形式)

import configparser

#創(chuàng)建配置文件對(duì)象
conf = configparser.ConfigParser()
#'DEFAULT'為section的名稱,值中的字典為section下的鍵值對(duì)
conf["DEFAULT"] = {'excel_path' : '../test_cases/case_data.xlsx' , 'log_path' : '../logs/test.log'}
conf["email"] = {'user_name':'32@qq.com','password':'123456'}
#把設(shè)置的conf對(duì)象內(nèi)容寫(xiě)入config.ini文件
with open('config.ini', 'w') as configfile:
  conf.write(configfile)

2.3 寫(xiě)入 ini 配置文件(方法形式)

import configparser

#創(chuàng)建配置文件對(duì)象
conf = configparser.ConfigParser()
#讀取配置文件
conf.read('config.ini', encoding="utf-8")
#在conf對(duì)象中新增section
conf.add_section('webserver')
#在section對(duì)象中新增鍵值對(duì)
conf.set('webserver','ip','127.0.0.1')
conf.set('webserver','port','80')
#修改'DEFAULT'中鍵為'log_path'的值,如沒(méi)有該鍵,則新建
conf.set('DEFAULT','log_path','test.log')
#刪除指定section
conf.remove_section('email')
#刪除指定鍵值對(duì)
conf.remove_option('DEFAULT','excel_path')
#寫(xiě)入config.ini文件
with open('config.ini', 'w') as f:
  conf.write(f)

上述3個(gè)例子基本闡述了configparser模塊的核心功能項(xiàng);

  • 例1中,encoding="utf-8"為了放置讀取的適合中文亂碼;
  • 例2你可以理解為在字典中新增數(shù)據(jù),鍵:配置文件的section,字符串格式;值:section的鍵值對(duì),字典格式;
  • 例3中在使用add_section方法時(shí),如果配置文件存在section,則會(huì)報(bào)錯(cuò);而set方法在使用時(shí),有則修改,無(wú)則新建。

關(guān)于Python中configparser模塊的案例分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI