python讀取config.ini配置檔案內容
阿新 • • 發佈:2021-10-14
# config.ini檔案內容 # 定義mongo分組 [mongodb] host = localhost port = 27017 data = xuexiao # 定義cmd分組 [cmd] viewPhone=adb devices startServer=adb start-server stopServer=adb kill-server install=adb install aaa.apk id=1 weight=12.1 isChoice=True # 定義log分組 [log] log_debug=true log_path=/home/webic/qly/Projects/TinyScan/dev/v1.6_TinyScan/log/
# 在程式中讀取配置檔案 """ sys.argv[]說白了就是一個從程式外部獲取引數的橋樑,這個“外部”很關鍵,所以那些試圖從程式碼來說明它作用的解釋一直沒看明白。因為我們從外部取得的引數可以是多個, 所以獲得的是一個列表(list),也就是說sys.argv其實可以看作是一個列表,所以才能用[]提取其中的元素。其第一個元素是程式本身,隨後才依次是外部給予的引數。 ['程式本身', '使用者輸入的第一個外部引數','使用者輸入的第一個外部引數'] ** config_path = sys.argv[sys.argv.index('-f')+1]這一句的意思是使用者執行檔案時比如 test.py -f /home/ubunt/config.ini 那麼獲取-f後面的路徑 sys.argv詳細看https://blog.csdn.net/program_developer/article/details/78647916 """ # 配置檔案路徑 config_path = './config.ini' if '-f' in sys.argv:** config_path = sys.argv[sys.argv.index('-f')+1] config = configparser.ConfigParser() config.read(config_path)** config_mongodb_host = config.get('mongodb', 'host') config_mongodb_port = config.getint('mongodb', 'port') config_log_debug = config.getboolean('log', 'debug') import configparser** # -sections得到所有的section,並以列表的形式返回 print('sections:' , ' ' , config.sections()) # -options(section)得到該section的所有option print('options:' ,' ' , config.options('config')) # -items(section)得到該section的所有鍵值對 print('items:' ,' ' ,config.items('cmd')) # -get(section,option)得到section中option的值,返回為string型別 print('get:' ,' ' , config.get('cmd', 'startserver')) # -getint(section,option)得到section中的option的值,返回為int型別 print('getint:' ,' ' ,config.getint('cmd', 'id'))** print('getfloat:' ,' ' , config.getfloat('cmd', 'weight')) print('getboolean:' ,' ', config.getboolean('cmd', 'isChoice')) """ 首先得到配置檔案的所有分組,然後根據分組逐一展示所有 """ for sections in config.sections(): for items in config.items(sections): print(items)