мета-данные страницы
Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| lib.py:aw_config:root [29.10.2024 11:13] – создано awgur | lib.py:aw_config:root [24.06.2026 13:41] (текущий) – awgur | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | ====== Ресурсы ====== | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | ====== Разделы ====== | ||
| + | |||
| * [[.: | * [[.: | ||
| * [[.: | * [[.: | ||
| * [[.: | * [[.: | ||
| + | * [[.: | ||
| + | |||
| + | |||
| + | ====== Работа с файлом конфигурации ====== | ||
| + | |||
| + | Конструктор объекта '' | ||
| + | |||
| + | <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(' | ||
| + | )) | ||
| + | </ | ||
| + | |||
| + | Для работы с разделами и подразделами конфигурации можно получать доступ к вложенным словарям: | ||
| + | <code python> | ||
| + | with ConfigFile('/ | ||
| + | with root_sectin.get_section(' | ||
| + | add_config(NetConfig, | ||
| + | port=net_section.get_value(' | ||
| + | baseurl=net_section.get_value(' | ||
| + | )) | ||
| + | </ | ||
| + | |||
| + | Вложенность не ограничивается. | ||
| + | |||
| + | Для работы с списками секций, | ||
| + | <code toml> | ||
| + | [[net]] | ||
| + | name = " | ||
| + | ip = " | ||
| + | |||
| + | [[net]] | ||
| + | name = " | ||
| + | ip = " | ||
| + | </ | ||
| + | |||
| + | Используется метод '' | ||
| + | <code python> | ||
| + | with ConfigFile('/ | ||
| + | conf_ar = [] | ||
| + | for net_section in root_sectin.get_list_section(' | ||
| + | conf_ar.append(NetConfig( | ||
| + | name=net_section.get_value(' | ||
| + | ip=net_section.get_value(' | ||
| + | )) | ||
| + | | ||
| + | add_config(NetConfig, | ||
| + | </ | ||
| + | |||
| + | Кроме массива можно строить словарь, | ||
| + | <code python> | ||
| + | with ConfigFile('/ | ||
| + | conf_ar = {} | ||
| + | for net_section in root_sectin.get_list_section(' | ||
| + | _name = net_section.get_value(' | ||
| + | conf_ar[_name] = NetConfig( | ||
| + | name=_name, | ||
| + | ip=net_section.get_value(' | ||
| + | ) | ||
| + | | ||
| + | add_config(NetConfig, | ||
| + | </ | ||
| + | |||
| + | |||
| + | Иной работы объекты класса '' | ||
| + | |||
| + | |||
| + | ===== Работа с параметрами конфигурации ===== | ||
| + | Как известно, | ||