Наилучшая практика использования модуля Python configparser и получения значений? - PullRequest
0 голосов
/ 04 мая 2018

Я пишу простой проект Python и хочу использовать модуль configparser для получения значений из файла config.ini.

Я сделал это так:

#!/usr/bin/env python3

import configparser
import os
import sys

class ConfigReader(object):

    def __init__(self, base_path):
        self.__config_path = os.path.join(base_path, 'config', 'config.ini')
        if os.path.exists(self.__config_path):
            self.config = configparser.ConfigParser()
            self.config.read(self.__config_path)
        else:
            raise FileNotFoundError(
                'Config file is NOT present as "' + self.__config_path + '" !')

    def get_mac_chrome_driver(self):
        return self.config['mac']['chrome_driver_path']

    def get_win_chrome_driver(self):
        return self.config['win']['chrome_driver_path']

Но теперь проблема в том, что мне нужно каждый раз создавать новый объект ConfigReader, затем я могу использовать функцию get_mac_chrome_driver () (чтобы получить значение config ['mac'] ['chrome_driver_path']).

Я считаю, что это не лучшая практика и не питон.

Могу ли я просто использовать его по from utls.ConfigReader import CHROME_DRIVER_PATH?

Спасибо!

1 Ответ

0 голосов
/ 04 июня 2018

После прочтения исходного кода Django может оказаться более «питонным» просто записать параметры / значения в settings.py, см. https://github.com/django/django/blob/master/django/conf/global_settings.py

...