您好,登錄后才能下訂單哦!
小編給大家分享一下python配置文件的使用方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
項目中使用的常量,我們把它收集在一個文件中,這就是配置文件。配置文件在項目中是非常必要的,它避免了項目中文件對常量的分散使用,讓常量可以統(tǒng)一修改,避免造成修改不全面的問題。
常用的配置文件后綴是.ini、.conf、.py,當(dāng)然還有使用.json、.txt的,推薦使用常用的.ini、.py,配置文件的名字一般是config便于理解和使用。
python學(xué)習(xí)網(wǎng),大量的免費python視頻教程,歡迎在線學(xué)習(xí)!
.ini文件是Initialization File的縮寫,即初始化文件,是windows的系統(tǒng)配置文件所采用的存儲格式,統(tǒng)管windows的各項配置;.py的配置文件,在python項目中是作為一個包導(dǎo)入,嚴(yán)格來說不是配置文件,而是擴展包。
下面將介紹兩類配置文件的使用,一類是.ini、.txt,另一類是.py。
.ini、.txt配置文件使用方法是一致的,只是一個后綴的區(qū)別,這里以ini配置文件來介紹,這類配置文件我們使用內(nèi)置configparser庫來使用,它可以實現(xiàn)配置文件的寫入、更新、刪除、讀取等操作非常方便,建議使用這種方式。
新建一個config.ini的配置文件內(nèi)容如下:
[mysql] name = admin host = 255.255.255.0 proxy = 6037 password = 123456 pool = true time = 3
其中[]中的是section節(jié)點,該節(jié)點下的等式是option即鍵=值
config.sections() # 獲取section節(jié)點 ['mysql'] config.options('mysql') # 獲取指定section 的options即該節(jié)點的所有鍵 ['name', 'host', 'proxy', 'password', 'pool', 'time'] config.get("mysql", "name") # 獲取指定section下的options 'admin' config.getint("mysql", "proxy") # 將獲取到值轉(zhuǎn)換為int型 6037 config.getboolean("mysql", "pool") # 將獲取到值轉(zhuǎn)換為bool型 True config.getfloat("mysql", "time") # 將獲取到值轉(zhuǎn)換為浮點型 3.0 config.items("mysql") # 獲取section的所用配置信息 [('name', 'admin'), ('host', '255.255.255.0'), ('proxy', '6037'), ('password', '123456'), ('pool', 'true'), ('time', '3')] config.set("mysql", "name", "root") # 修改db_port的值為69 config.get("mysql", "name") 'root' config.has_section("mysql") # 是否存在該section True config.has_option("mysql", "password") # 是否存在該option True config.add_section("redis") # 添加section節(jié)點 config.set("redis", "name", "redis_admin") # 設(shè)置指定section 的options config.items('redis') [('name', 'redis_admin')]
常用方法如下:
# -*- coding: utf-8 -*- import configparser config = configparser.ConfigParser() config.read("Config.ini", encoding="utf-8") config.sections() # 獲取section節(jié)點 config.options('mysql') # 獲取指定section 的options即該節(jié)點的所有鍵 config.get("mysql", "name") # 獲取指定section下的options config.getint("mysql", "proxy") # 將獲取到值轉(zhuǎn)換為int型 config.getboolean("mysql", "pool") # 將獲取到值轉(zhuǎn)換為bool型 config.getfloat("mysql", "time") # 將獲取到值轉(zhuǎn)換為浮點型 config.items("mysql") # 獲取section的所用配置信息 config.set("mysql", "name", "root") # 修改db_port的值為69 config.has_section("mysql") # 是否存在該section config.has_option("mysql", "password") # 是否存在該option config.add_section("redis") # 添加section節(jié)點 config.set("redis", "name", "redis_admin") # 設(shè)置指定section 的options config.remove_section("redis") # 整個section下的所有內(nèi)容都將刪除 config.remove_option("mysql", 'time') # 刪除section下的指定options config.write(open("Config", "w")) # 保存config
當(dāng)然使用.text、.conf后綴的情況如上,使用方法也同上。
至于使用.py文件的配置方法可以同使用一個本地包一樣,也可以像scrapy的get_project_settings方法初始化setting.py,這個就顯得很專業(yè),后面會對其源碼詳細(xì)分析。
.json格式配置文件一般用來存放大量的結(jié)構(gòu)化配置或者本地數(shù)據(jù),使用較少。
最后一種是數(shù)據(jù)庫配置,將配置文件寫到數(shù)據(jù)庫,每次程序運行前先讀取數(shù)據(jù)庫,在初始化,這種準(zhǔn)確來說已經(jīng)不再是配置,而是程序設(shè)計的方案。
以上是python配置文件的使用方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。