您好,登錄后才能下訂單哦!
這篇文章主要介紹python讀取配置文件的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
configparser模塊在python中用來讀取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一個或多個節點(section), 每個節可以有多個參數(鍵=值)。使用的配置文件的好處就是不用把程序寫死,可以使程序更靈活。
1、創建配置文件
一般將配置文件創建在config包下,配置文件最好使用.ini格式,示例如下:
[LoginElement] #節點(section) user_name=id>logInName #其中id決定了通過哪種方式進行定位 user_password=id>password code_image=id>verifyCode code_text=id>verifyCodeInput submit=id>submitForm [mysql] #節點(section) host=id>127.0.0.1 port=id>3306 user=id>root password=id>123456
2、讀取配置文件
cf=configparser.ConfigParser() #創建對象 cf.read('D:\liantuo\seleniumTest\config\LocalElement.ini',encoding='UTF-8') #讀取配置文件,直接讀取ini文件內容 print(cf.sections()) #獲取ini文件內所有的section(節點),以列表形式返回 print(cf.options("LoginElement")) #獲取指定sections下所有options (key),以列表形式返回 print(cf.items('LoginElement')) #獲取指定section下所有的鍵值對(key-value) print(cf.get('LoginElement','user_name')) #獲取section中option的值,返回為string類型 getint(section,option) #返回int類型 getfloat(section, option) #返回float類型 getboolean(section,option) #返回boolen類型
*注意:讀取配置文件時參數添加encoding='UTF-8' ,防止(UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 15: illegal multibyte sequence)
對應輸出
['LoginElement', 'mysql'] ['user_name', 'user_password', 'code_image', 'code_text', 'submit'] [('user_name', 'id>logInName'), ('user_password', 'id>password'), ('code_image', 'id>verifyCode'), ('code_text', 'id>verifyCodeInput'), ('submit', 'id>submitForm')] id>logInName
3、重構封裝
class ReadIni(object): # 構造函數 def __init__(self,file_name=None,node=None): ''' :param file_name:配置文件地址 :param node: 節點名 ''' #容錯處理 if file_name == None: #默認地址 file_name = 'D:\liantuo\seleniumTest\config\LocalElement.ini' else: self.file_name=file_name if node == None: #默認節點 self.node = "LoginElement" else: self.node = node self.cf = self.load_ini(file_name) #加載文件 def load_ini(self,file_name): cf = configparser.ConfigParser() cf.read(file_name,encoding='utf-8') return cf #獲取value得值 def get_value(self,key): data = self.cf.get(self.node,key) return data #主入口,相當于java的main方法 if __name__ == '__main__': #自定義 # path=r'E:\Pythonx\seleniumTest\config\testIni.ini' #注意r # read_init = ReadIni(file_name=path,node='testa') #傳入新自定義配置文件地址、節點 # print(read_init.get_value('ji')) #獲取value值 #默認 read_init = ReadIni() #默認配置文件地址、節點 print(read_init.get_value('user_name')) #傳入key值,獲取value
以上是python讀取配置文件的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。