мета-данные страницы
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версия | |||
| lib.py:aw_config:obj [03.11.2024 16:46] – awgur | lib.py:aw_config:obj [23.06.2026 12:26] (текущий) – awgur | ||
|---|---|---|---|
| Строка 4: | Строка 4: | ||
| * '' | * '' | ||
| * '' | * '' | ||
| - | |||
| - | |||
| - | ====== Работа с файлом конфигурации ====== | ||
| - | |||
| - | Конструктор объекта '' | ||
| - | |||
| - | <code python> | ||
| - | conf_file = ConfigFile('/ | ||
| - | </ | ||
| - | |||
| - | Далее объект '' | ||
| - | |||
| - | <code python> | ||
| - | with ConfigFile(config_file) as root_section: | ||
| - | port = root_section.get_value(' | ||
| - | </ | ||
| - | |||
| - | Особенно хорошо и лаконично получается при использовании хранилища конфигураций: | ||
| - | <code python> | ||
| - | with ConfigFile('/ | ||
| - | add_config(NetConfig, | ||
| - | port=root_section.get_value(' | ||
| - | baseurl=root_section.get_value(' | ||
| - | )) | ||
| - | </ | ||
| - | |||
| - | Иной работы объекты класса '' | ||
| - | |||
| - | |||
| - | ===== Работа с параметрами конфигурации ===== | ||
| - | |||
| - | Как известно, | ||
| Строка 85: | Строка 53: | ||
| with ConfigFile('/ | with ConfigFile('/ | ||
| with root_section.get_section(' | with root_section.get_section(' | ||
| + | param1 = section_section.get_value(' | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== get_list_section() ==== | ||
| + | |||
| + | Подобен '' | ||
| + | |||
| + | < | ||
| + | obj.get_list_section(name, | ||
| + | </ | ||
| + | |||
| + | **Возвращает: | ||
| + | |||
| + | ^ Параметр ^ Тип ^ Описание ^ | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | Для работы с секциями можно применять менеджер контекста. Например для файла с содержимым: | ||
| + | <code toml> | ||
| + | [[section]] | ||
| + | param = " | ||
| + | |||
| + | [[section]] | ||
| + | param = " | ||
| + | </ | ||
| + | |||
| + | Можно применить следующий код: | ||
| + | <code python> | ||
| + | with ConfigFile('/ | ||
| + | with root_sectin.get_list_section(' | ||
| + | conf_ar = [] | ||
| + | for el in net_section: | ||
| + | conf_ar.append(dict( | ||
| + | param1 = el.get_value(' | ||
| + | )) | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | ==== get_section_by_path() ==== | ||
| + | |||
| + | Подобен '' | ||
| + | |||
| + | < | ||
| + | obj.get_section_by_path(name, | ||
| + | </ | ||
| + | |||
| + | **Возвращает: | ||
| + | |||
| + | ^ Параметр ^ Тип ^ Описание ^ | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | Для работы с секциями можно применять менеджер контекста. Например для файла с содержимым: | ||
| + | <code toml> | ||
| + | [section.section2] | ||
| + | param1 = " | ||
| + | </ | ||
| + | |||
| + | Можно применить следующий код: | ||
| + | <code python> | ||
| + | with ConfigFile('/ | ||
| + | with root_section.get_section_by_path(' | ||
| param1 = section_section.get_value(' | param1 = section_section.get_value(' | ||
| </ | </ | ||