Курс Python → Типы возвращаемых значений в Python
Для работы с функциями, которые могут возвращать значения различных типов, в Python можно использовать типы typing.Optional или typing.Union. Например, если у вас есть переменная, которая может быть либо строкой, либо None, то вы можете указать тип Optional[str]. Это позволит явно указать, что функция может вернуть либо строку, либо None.
Для случаев, когда функция может возвращать значения нескольких различных типов, можно воспользоваться типом Union. Например, если функция может вернуть как строку, так и целое число, то вы можете указать тип Union[str, int]. Таким образом, вы укажете, что функция может вернуть либо строку, либо целое число.
Использование типов возвращаемых значений позволяет улучшить читаемость кода и облегчить его понимание. Другие разработчики, работающие с вашим кодом, смогут быстро понять, какие типы данных могут быть возвращены функцией, что ускорит процесс разработки и отладки.
from typing import Optional, Union
def example_function(input: str) -> Optional[str]:
if input == "example":
return "This is an example"
else:
return None
def another_function(input: int) -> Union[str, int]:
if input % 2 == 0:
return "Even number"
else:
return input
В приведенном примере функция example_function принимает строку и возвращает либо строку, либо None, в зависимости от значения входного аргумента. Функция another_function принимает целое число и возвращает либо строку, либо само число, в зависимости от условия внутри функции.
Другие уроки курса "Python"
- Работа со списками
- Сравнение def и lambda-функций
- Сравнение строк в Python
- Обработка исключений в Python
- Структура данных deque в Python
- Преобразование Excel в PDF с Spire.XLS
- Работа с дробями в Python
- Непрерывная проверка в Python
- Работа со строками в Python
- Генератор данных в Keras
- Особенности множеств в Python
- Работа с изменяемыми коллекциями
- Метод Event.wait() в Python
- Объединение, распаковка и деструктуризация
- Работа с атрибутом dict
- Деление в Python
- Возврат значений из генератора
- Импорт с альтернативным именем
- Множественное наследование в Python
- Изменение элемента списка
- Динамическая типизация в Python
- Создание списка через итерацию
- Цикл for с enumerate() в Python
- Pillow: работа с изображениями
- Роль запятой в Python
- Enum в Python
- Python: Splat-оператор и splatty-splat
- Форматирование объектов с модулем pprint
- Метод getitem для доступа к элементам последовательности
- Конкатенация строк в Python
- Список и кортеж в Python
- Оптимизация памяти в Python
- Метод get для словаря
- Подсчет количества элементов в списке
- Фильтрация списков с itertools
- Flask: создание веб-приложений
- Перезагрузка оператора в Python
- Удаление символа из строки
- Оптимизация гиперпараметров с Scikit Optimize
- Настройка нарезки списков
- Оптимизация памяти с slots
- Импорт модуля из другого каталога
- Измерение времени выполнения кода
- Сортировка с параметром key
- Декораторы в Python
- Операции с матрицами в Python
- Функция zip() в Python
- Создание инструмента обнаружения плагиата















