Если вам нужно просто прочитать все значения из раздела в файле свойств:
Ваше config.properties
расположение файлов:
[SECTION_NAME]
key1 = value1
key2 = value2
Вы код:
import configparser
config = configparser.RawConfigParser()
config.read('path_to_config.properties file')
details_dict = dict(config.items('SECTION_NAME'))
Это даст вам словарь, в котором ключи такие же, как в конфигурационном файле, и соответствующие им значения.
details_dict
является :
{'key1':'value1', 'key2':'value2'}
Теперь, чтобы получить значение key1:
details_dict['key1']
Помещение всего этого в метод, который читает этот раздел из файла конфигурации только один раз (при первом вызове метода во время выполнения программы).
def get_config_dict():
if not hasattr(get_config_dict, 'config_dict'):
get_config_dict.config_dict = dict(config.items('SECTION_NAME'))
return get_config_dict.config_dict
Теперь вызовите вышеуказанную функцию и получите требуемое значение ключа:
config_details = get_config_dict()
key_1_value = config_details['key1']
-------------------------------------------------- -----------
Расширение подхода, упомянутого выше, автоматическое чтение раздела за разделом, а затем доступ по имени раздела и имени ключа.
def get_config_section():
if not hasattr(get_config_section, 'section_dict'):
get_config_section.section_dict = dict()
for section in config.sections():
get_config_section.section_dict[section] =
dict(config.items(section))
return get_config_section.section_dict
Чтобы получить доступ к:
config_dict = get_config_section()
port = config_dict['DB']['port']
(здесь «DB» - это имя раздела в конфигурационном файле, а «port» - это ключ в разделе «DB».)