Décrit comment définir des paramètres à l'aide de configparser, qui est une bibliothèque standard de python, et comment utiliser les paramètres de configuration.
git : k-washi
Il s'agit d'un fichier qui décrit les paramètres à lire par configparser. A titre d'exemple, il peut être décrit comme suit. Les commentaires peuvent être écrits en utilisant #.
config.ini
[Microphone]
#ID de Mike
ID = 0
SamplingRate = 44100
[Output]
#ID du périphérique de sortie
ID = 1
#Record 1:Sortie vers SavePath, 0:Continuez à sortir vers le périphérique d'ID.
Record = 1
#recording time [sec] >= 1
RecordTime = 15
Lisez le fichier et les paramètres config.ini. Pour l'enregistreur, reportez-vous à Comment utiliser le module de journalisation Python.
Puisque la valeur du paramètre de lecture est une chaîne, convertissez le nombre avec int, float, etc. En outre, les valeurs Oui / Non définies dans 0 et 1 peuvent être converties en True et False en les définissant sur bool.
utils/config.py
import os
import sys
sys.path.append(os.path.join(os.path.dirname(__file__), '..'))
# ------------
from utils.logConf import logging
logger = logging.getLogger(__name__)
# -------------
import configparser
CONFIG_FILE_PATH = './config.ini'
class configInit():
def __init__(self):
config_ini = configparser.ConfigParser()
if not os.path.exists(CONFIG_FILE_PATH):
logger.error('Il n'y a pas de fichier de configuration')
exit(-1)
config_ini.read(CONFIG_FILE_PATH, encoding='utf-8')
logging.info('----Démarrer le réglage----')
try:
self.MicID = int(config_ini['Microphone']['ID'])
self.SamplingRate = int(config_ini['Microphone']['SamplingRate'])
self.OutpuID = int(config_ini['Output']['ID'])
self.Record = bool(int(config_ini['Output']['Record']))
self.RecordTime = float(config_ini['Output']['RecordTime'])
except Exception as e:
logger.critical("config error {0}".format(e))
import os
import sys
sys.path.append(os.path.join(os.path.dirname(__file__), '..'))
# ------------
from utils.config import configInit
Conf = configInit()
from utils.logConf import logging
logger = logging.getLogger(__name__)
# -----------
logger.info(Conf.MicID)
#2020-01-15 17:12:03,929 [config.py:28] INFO ----Démarrer le réglage----
#2020-01-15 17:12:03,930 [confTest.py:15] INFO 0 #MicID
C'est tout à propos du fichier de configuration python. Lors de la création d'un système, il est recommandé de le définir aussi facilement que ci-dessus car il y aura moins de modifications lors de la tentative de paramétrage externe plus tard.
Recommended Posts