前言
在平時(shí)的工程中,我們在構(gòu)建工程時(shí),常常需要用到配置文件,用來配置項(xiàng)目的一些信息,比如數(shù)據(jù)庫,請求網(wǎng)址,文件夾,線程、進(jìn)程數(shù)等信息,這樣就可以方便我們通過修改配置文件中的參數(shù)來很好地完成整個(gè)項(xiàng)目的功能修改或開發(fā)。配置文件一般區(qū)別于Python代碼,會(huì)單獨(dú)存放在一個(gè)文件夾中,方便管理,常見的配置文件格式有.conf, .ini, .yaml等。
本文使用Python中的configparser模塊來處理conf、ini配置文件。
首先需要安裝configparser模塊,命令如下:
pip3 install configparser
我們以下面的具體工程為例,來講述如何使用Python如何工程中的配置文件,項(xiàng)目結(jié)構(gòu)如下圖:
該項(xiàng)目中只有兩個(gè)文件,一個(gè)為mysql.conf,是MySQL的連接配置;另一個(gè)是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)建一個(gè)游標(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)容,如下圖:
以上為示例項(xiàng)目的演示內(nèi)容。
使用配置文件,在工程的構(gòu)建中,無疑是重要且方便的,因此,在實(shí)際的工程實(shí)踐中,也應(yīng)該多多使用配置文件,希望本文的內(nèi)容能對大家的工作有所幫助~
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對腳本之家的支持。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
