This commit is contained in:
2025-10-03 18:35:32 +03:00
parent 3eb7f2e398
commit ab5710ba22
6 changed files with 178 additions and 27 deletions

View File

@@ -0,0 +1,20 @@
# Перечисление `NotBoolAction`
Перечисление `NotBoolAction` предназначено для управления поведением программы в ситуациях, когда ожидается получение
булевого значения, однако получено другое. Оно описывает возможные стратегии реакции на такую ситуацию, что даёт
разработчику большую свободу выбора поведения системы.
## Возможные варианты реакций:
- **IGNORE**: Игнорировать ситуацию и продолжить выполнение программы.
- **IT_TRUE**: Рассматривать любое небулевое значение как истину (True).
- **IT_FALSE**: Рассматривать любое небулевое значение как ложь (False).
- **RAISE**: Генерировать исключение, сигнализируя о критической ошибке.
## Основная информация
- **Имя файла**: anb_python_components\enums\not_bool_action.py
- **Автор**: Александр Бабаев
- **Версия**: 1.0.0
- **Дата начала поддержки**: с версии 1.0
[На главную](../../index.md)

View File

@@ -0,0 +1,79 @@
# Класс `BoolExtension`
Этот класс предназначен для предоставления расширенных возможностей работы с булевыми значениями в Python. Класс
обеспечивает удобные способы конвертации булевых значений в строки, подсчета количества истинных элементов в списках и
обнаружения наличия хотя бы одного истинного элемента среди списка выражений.
## Основная информация
- **Имя файла**: anb_python_components/extensions/bool_extension.py
- **Автор**: Александр Бабаев
- **Версия**: 1.0.0
- **Дата начала поддержки**: с версии 1.0
## Атрибуты и методы класса
### Метод `to_str`
Конвертирует булево значение в строку, используя кастомизированные обозначения для значений `True` и `False`.
**Параметры**:
- `b`: Булево значение, которое необходимо преобразовать.
- `if_true`: Значение, которое возвращается, если булево значение равно `True` (по умолчанию "True").
- `if_false`: Значение, которое возвращается, если булево значение равно `False` (по умолчанию "False").
`Пример использования`:
```python
from anb_python_components.extensions.bool_extension import BoolExtension
print(BoolExtension.to_str(True)) # True
print(BoolExtension.to_str(False, if_false="Нет")) # Нет
```
### Метод `true_count`
Подсчитывает количество истинных значений в списке выражений, предлагая разные подходы к обработке не-булевых значений.
**Параметры**:
- `expressions`: Список булевых выражений.
- `if_not_bool`: Параметр, определяющий стратегию обработки небулевых значений. По умолчанию игнорируются.
Стратегии обработки небулевых значений определяются перечислением [`NotBoolAction`](../enums/not_bool_action.md).
**Пример использования**:
```python
from anb_python_components.enums.not_bool_action import NotBoolAction
from anb_python_components.extensions.bool_extension import BoolExtension
expressions = [True, False, "Некорректное значение"]
count = BoolExtension.true_count(expressions, NotBoolAction.IT_TRUE)
print(count) # 2
```
### Метод `any_true`
Проверяет, присутствует ли хотя бы одно истинное выражение в списке.
**Параметры**:
- `expressions`: Список булевых выражений.
**Пример использования**:
```python
from anb_python_components.extensions.bool_extension import BoolExtension
expressions = [False, False, True]
result = BoolExtension.any_true(expressions)
print(result) # True
```
## Заключение
Класс `BoolExtension` существенно облегчает работу с булевыми значениями, предоставляя удобную обработку нестандартных
ситуаций и простое управление потоком логики в приложении.
[На главную](../../index.md)