日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python之配置文件處理

系統(tǒng) 1773 0

??在平時(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)如下圖:

Python之配置文件處理_第1張圖片

該項(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)容,如下圖:

Python之配置文件處理_第2張圖片

??以上為示例項(xiàng)目的演示內(nèi)容。
??使用配置文件,在工程的構(gòu)建中,無疑是重要且方便的,因此,在實(shí)際的工程實(shí)踐中,也應(yīng)該多多使用配置文件,希望本文的內(nèi)容能對大家的工作有所幫助~

注意:不妨了解下筆者的微信公眾號: Python爬蟲與算法(微信號為:easy_web_scrape), 歡迎大家關(guān)注~


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 新巴尔虎右旗| 正定县| 盐城市| 嵩明县| 塘沽区| 凌海市| 阿勒泰市| 微博| 嵩明县| 昌宁县| 保山市| 迁西县| 黔南| 明溪县| 正阳县| 阳新县| 临颍县| 长汀县| 绥德县| 石河子市| 正安县| 德昌县| 乌兰浩特市| 吉林省| 乐至县| 浦城县| 特克斯县| 五峰| 双鸭山市| 曲靖市| 岳池县| 根河市| 招远市| 盐源县| 五指山市| 历史| 和平区| 阿鲁科尔沁旗| 新野县| 聊城市| 临颍县|