Python配置文件處理的方法教程
前言
在平時的工程中,我們在構(gòu)建工程時,常常需要用到配置文件,用來配置項目的一些信息,比如數(shù)據(jù)庫,請求網(wǎng)址,文件夾,線程、進(jìn)程數(shù)等信息,這樣就可以方便我們通過修改配置文件中的參數(shù)來很好地完成整個項目的功能修改或開發(fā)。配置文件一般區(qū)別于Python代碼,會單獨(dú)存放在一個文件夾中,方便管理,常見的配置文件格式有.conf, .ini, .yaml等。
本文使用Python中的configparser模塊來處理conf、ini配置文件。
首先需要安裝configparser模塊,命令如下:
pip3 install configparser
我們以下面的具體工程為例,來講述如何使用Python如何工程中的配置文件,項目結(jié)構(gòu)如下圖:
該項目中只有兩個文件,一個為mysql.conf,是MySQL的連接配置;另一個是Python代碼,用于讀取某張表的具體內(nèi)容。
其中mysql.conf文件的內(nèi)容如下:
[mysql] db_host=localhost db_port=3306 db_user=root db_password= db_database=school
里面的[mysql]是select,類似于HTML中的select(下拉菜單),下面的幾行為option,規(guī)定了數(shù)據(jù)庫的連接信息,包括host、port、user、password以及database。
接著是mysql_test.py,完整的代碼內(nèi)容如下:
# -*- coding:utf-8 -*- # time: 2019-08-28 # place: Daxing Beijing from configparser import ConfigParser import pymysql cp = ConfigParser() cp.read('mysql.conf') host = cp.get("mysql", "db_host") port = cp.getint("mysql", "db_port") user = cp.get("mysql", "db_user") password = cp.get("mysql", "db_password") database = cp.get("mysql", "db_database") # 打開數(shù)據(jù)庫連接 db = pymysql.connect(host=host, port=port, user=user, password=password, db=database ) # 使用cursor()方法創(chuàng)建一個游標(biāo)對象: cursor cursor = db.cursor() # 使用execute()方法執(zhí)行SQL語句并輸出結(jié)果 cursor.execute("select * from employee") for row in cursor.fetchall(): print(row) # 關(guān)閉游標(biāo)對象 cursor.close() # 關(guān)閉數(shù)據(jù)庫連接 db.close()
在該文件中,我們使用configparser模塊解析出mysql.conf文件中MySQL數(shù)據(jù)庫的連接方式,并使用pymysql模塊獲取school數(shù)據(jù)庫中employee表的全部數(shù)據(jù)。輸出的結(jié)果如下:
('mac', 'mohan', 20, 'm', 2000.0, datetime.date(2019, 9, 1))
('alex', 'ben', 24, 'f', 2500.0, datetime.date(2012, 8, 9))
讓我們看一眼MySQL中這張表的內(nèi)容,如下圖:
以上為示例項目的演示內(nèi)容。
使用配置文件,在工程的構(gòu)建中,無疑是重要且方便的,因此,在實(shí)際的工程實(shí)踐中,也應(yīng)該多多使用配置文件,希望本文的內(nèi)容能對大家的工作有所幫助~
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。
相關(guān)文章
PyTorch?device與cuda.device用法介紹
這篇文章主要介紹了PyTorch?device與cuda.device用法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-04-04Python3實(shí)現(xiàn)英文字母轉(zhuǎn)換哥特式字體實(shí)例代碼
這篇文章主要給大家介紹了關(guān)于Python3實(shí)現(xiàn)英文字母轉(zhuǎn)換哥特式字體的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09Python實(shí)現(xiàn)字符串模糊匹配的兩種實(shí)現(xiàn)方法
本文主要介紹了Python實(shí)現(xiàn)字符串模糊匹配的兩種實(shí)現(xiàn)方法,Python中通過re.search()方法實(shí)現(xiàn),對于首位起始的內(nèi)容匹配,也可通過re.match()方法實(shí)現(xiàn),感興趣的可以了解一下2023-11-11pandas將Series轉(zhuǎn)成DataFrame的實(shí)現(xiàn)
本文主要介紹了pandas將Series轉(zhuǎn)成DataFrame的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01關(guān)于python 讀取csv最快的Datatable的用法,你都學(xué)會了嗎
大家都知道Datatable與眾不同就是快,還有一點(diǎn)大家需要注意使用Datatable庫需要python3.6及以上版本,接下來通過本文給大家介紹了python 讀取csv最快的Datatable的用法,需要的朋友可以參考下2021-10-10Python基于jieba分詞實(shí)現(xiàn)snownlp情感分析
情感分析(sentiment analysis)是2018年公布的計算機(jī)科學(xué)技術(shù)名詞,它可以根據(jù)文本內(nèi)容判斷出所代表的含義是積極的還是負(fù)面的等。本文將通過jieba分詞實(shí)現(xiàn)snownlp情感分析,感興趣的可以了解一下2023-01-01