Python操作配置文件ini的三種方法分享
時間:2019-10-20 作者:energysober 來源:互聯網python 操作配置文件ini的三種方法
方法一:crudini 命令
說明
crudini命令是Linux下的一個操作配置文件的命令工具
用法
crudini --set [--existing] config_file section [param] [value] # 修改配置文件內容 crudini --get [--format=sh|ini] config_file [section] [param] # 獲取配置文件內容 crudini --del [--existing] config_file section [param] # 刪除配置文件內容 crudini --merge [--existing] config_file [section] # 合并
舉例
添加
crudini --set test.ini test_section test_param test_value
更新
crudini --set [--existing] test.ini test_section test_param test_value
刪除
刪除param:
crudini --del test.ini test_section test_param
刪除section:
crudini --del test.ini test_section
獲取
crudini --del test.ini test_section test_param
如果該標量不在某一個section里面,則section用一個空字符表示:
crudini --del test.ini '' test_param
合并
將another.ini配置文件合并到test.ini中:
crudini --merge test.ini < another.ini
方法二 :ConfigParser模塊
說明
ConfigParser 模塊為常用的操作ini文件的模塊,但是存在一些缺陷,無法識別section的大小寫,無法讀取文件注釋,這樣修帶有注釋的配置文件時就會存在問題。
用法示例
示例文件test.ini
[test_section] test_param = test_value
讀取
import ConfigParser config = ConfigParser.ConfigParser() config.readfp(open('test.ini')) test_value = config.get("test_section","test_param")
寫入
添加section
import ConfigParser config = ConfigParser.ConfigParser() # set a value of parameters config.add_section("test_section2") config.set("test_section2", "test_param2", "test_value2") config.set("test_section3", "test_param3", "test_value3") # write to file config.write(open('test.ini', "w"))
修改
import ConfigParser config = ConfigParser.ConfigParser() config.read('1.ini') config.set("test_section", "test_param3", "test_value3") config.write(open('test.ini', "r+"))
方法三:configobj模塊
說明
正常的讀配置文件的方法是給ConfigObj一個文件名,然后通過字典來訪問成員,子段來獲取value值,不會存在注釋無法讀取的缺陷
用法示例
示例文件test.ini
[test_section] test_param = test_value
讀取
from configobj import ConfigObj config = ConfigObj("test.ini",encoding='UTF8') # 讀配置文件 print config['test_section'] print config['test_section']['test_param ']
修改
from configobj import ConfigObj config = ConfigObj("test.ini",encoding='UTF8') config['test_section']['test_param '] = "test_value2" # 寫入 config.write()
添加section
from configobj import ConfigObj config = ConfigObj("test.ini",encoding='UTF8') config['test_section2'] = {} config['test_section2']['test_param'] = "test_value" # 寫入 config.write()
刪除
from configobj import ConfigObj config = ConfigObj("test.ini",encoding='UTF8') del config['test_section2']['test_param'] config.write()
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對的支持。如果你想了解更多相關內容請查看下面相關鏈接
- 相關推薦
- Python開發:Django中間件攔截未登錄url實例詳解
- python開發:矢量數據轉柵格數據代碼分享
- python開發:多進程間通信代碼實現例子
- Python開發:在django中實現支付寶支付的代碼分享
- 分享:Django Admin中增加導出CSV功能過程詳解
- Python教程:面向對象之Web靜態服務器
- python開發:配置文件寫入過程的代碼解析