py.lib.aw_config
12:75523df5b946 Browse Files
. Оптимизация изменения 493b42d1 и распространение его ещё и на разбор файлов конфигураций.
src/aw_config/env.py src/aw_config/file.py
1.1 --- a/src/aw_config/env.py Wed Oct 30 10:57:17 2024 +0300 1.2 +++ b/src/aw_config/env.py Wed Oct 30 13:40:41 2024 +0300 1.3 @@ -20,8 +20,11 @@ 1.4 raise EnvConfigError(name, f'Ошибка преобразования типа - {e}') 1.5 1.6 except KeyError: 1.7 - if default is _UNDEFINED and mandatory: 1.8 + if default is not _UNDEFINED: 1.9 + return default 1.10 + 1.11 + elif mandatory: 1.12 raise EnvConfigError(name, 'Не установлен параметр') 1.13 1.14 - elif default is not _UNDEFINED: 1.15 - return default 1.16 + else: 1.17 + return None
2.1 --- a/src/aw_config/file.py Wed Oct 30 10:57:17 2024 +0300 2.2 +++ b/src/aw_config/file.py Wed Oct 30 13:40:41 2024 +0300 2.3 @@ -61,11 +61,14 @@ 2.4 параметра будет использовано значение None 2.5 """ 2.6 if name not in self.d: 2.7 - if mandatory and default is _UNDEFINED: 2.8 + if default is not _UNDEFINED: 2.9 + return default 2.10 + 2.11 + elif mandatory: 2.12 raise ConfigFileError(self._format_err_msg(f'Параметр "{name}" в файле отсутствует')) 2.13 2.14 else: 2.15 - return default 2.16 + return None 2.17 2.18 else: 2.19 _buf = self.d[name]