python 編寫配置檔案

2021-10-02 03:08:56 字數 2974 閱讀 7366

對於一些小的專案**,配置引數都是固定的,可以直接寫入**裡面,有些則可以通過輸入框輸入,但對於乙個大的工程,或者說真正意義的工程來說,配置引數是多變的,或者資料量是很龐大的,所以需要乙個檔案進行儲存。最近剛好要用到,所以上網搜了一下資料,整理了一下。

python 的配置檔案主要用 .ini字尾的檔案,自帶了乙個叫 configparser的庫。

下面是這個庫的基本使用:

(1)直接用記事本新建乙個配置檔案

(2)編寫規則:

每個模組叫乙個section,名字用中括號 " " 括起來

然後每一行寫乙個option ,每個選項就是乙個option。直接寫名字,後面加 " = " 再加上它的值就行

可以在配置檔案中加入注釋 ,但是注釋必須是單獨的一行,且以 「#」 開頭。只是每次執行時不會讀入注釋,只要執行一次,寫入檔案後,所有的注釋都會消失。所以僅僅用於第一次初始化時有用(如果不進行寫入,則可以一直在)。

[section1]

option1 =

11option2 =

123#我是注釋

#我是另乙個注釋

[section2]

name =

"czj"

password =

123456

add =

"sicnu"

儲存檔案的時候要修改字尾名,編碼格式要是 utf-8 以免出錯。

#建立乙個類

config = configparser.configparser(

)config.read(

"demo.ini"

, encoding=

"utf-8"

)

print

(config.sections(

))

執行結果

print

(config.options(

"section1"

))

執行結果

result = config.items(

"section2"

)print

(result)

#返回值為列表型別

print

(type

(result)

)#列表的每乙個元素為元組型別

result0=result[0]

print

(type

(result0)

)

執行結果

#1.get方法

print

(config.get(

"section1"

,"option2"))

#2.另一種讀取方法

print

(config[

"section2"][

"password"

])

執行結果

config.

set(

"section1"

,"option1"

,"11"

)#修改db_port的值為69

config.write(

open

("demo.ini"

,"w"

))

config.has_section(

"section1"

)#是否存在該section

config.has_option(

"section1"

,"option1"

)#是否存在該option

if

not config.has_section(

"default"):

# 檢查是否存在section

config.add_section(

"default")if

not config.has_option(

"default"

,"db_host"):

# 檢查是否存在該option

config.

set(

"default"

,"db_host"

,"1.1.1.1"

)config.write(

open

("demo.ini"

,"w"

))

config.remove_section(

"default"

)#整個section下的所有內容都將刪除

config.remove_option(

"section1"

,"option3"

)config.write(

open

("demo.ini"

,"w"

))

在建立類的時候,使用了read的方法,是把檔案讀到了記憶體,在記憶體中進行了改變,但是如果不進行檔案的寫入,那麼這些修改都是沒用的,檔案不會產生任何的改變。切記切記,每次更改之後記得重新寫回檔案中

config.write(

open

("demo.ini"

,"w"

))

python配置檔案

將所有的 和配置都變成模組化可配置化,這樣就提高了 的重用性,不再每次都去修改 內部,這個就是我們逐步要做的事情,可配置化 coding utf 8 flask 配置資訊 在主程式中 from flask import flask flask name 方案一 物件名.congif 資料名 單獨配置...

python 配置檔案

配置檔案2 ini properties conf 等都是配置檔案3 section 片段 option 選項4 同乙個section下option都是唯一的56 語法7 secion 8 option values9 1011 例如 12 student1 13 name 小丫14 age 23 ...

Python配置XML配置檔案

usr bin env python coding utf 8 author rache date 2020 3 19 22 02 desc tomcat元件配置初始化,適用版本 apache tomcat 9.0.33 from xml.etree.elementtree import eleme...