Курс 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"

  1. Избегание изменяемых аргументов
  2. Отправка POST запроса на сервер.
  3. Удаление эмодзи с помощью pandas
  4. Транспонирование 2D-массива с помощью zip
  5. Профилирование кода
  6. Метод matmul для умножения матриц
  7. Проверка списка: any() и all()
  8. Явный импорт переменных
  9. Numpy: разбиение массивов
  10. Работа с модулем cmath
  11. Сложение матриц в NumPy
  12. Ограничение ресурсов в Python
  13. Проверка типа данных
  14. Замена символов в Python
  15. Python Enumerate
  16. Оператор «not» в Python
  17. Получение срезов итераторов
  18. Срезы в Python
  19. Блок try-except-else
  20. Асинхронный код в Python
  21. Транспонирование 2D-массива с помощью zip
  22. Замена атрибута в именованном кортеже
  23. Работа с функцией next() в Python
  24. Python: Фильтрация списков с помощью filter()
  25. Метод lt для сортировки объектов
  26. Управление IP-адресами через прокси
  27. Функция product() в Python
  28. Оформление текста в консоли с TermColor
  29. Модуль os: работа с файлами и папками
  30. Проверка типа объекта в Python
  31. Инициализация структур данных
  32. Работа с файлами в Python
  33. Переменные класса и экземпляра
  34. Оператор in в Python
  35. Фильтрация входных данных в Python
  36. Метод ne для сравнения объектов
  37. Карта бомбоубежищ в Москве и Питере
  38. Метод __iand__ для пользовательских классов
  39. Метод ior для битовых операций
  40. Конкатенация списков в Python
  41. Python-dateutil — работа с датами
  42. Обмен данными с asyncio.Queue
  43. Транспонирование матрицы в Python
  44. Объединение объектов в Python
  45. Проектирование Singleton с метаклассом
  46. Проверка дублей в списке.
  47. Удаление дубликатов из списка с помощью dict.fromkeys

Marketello читают маркетологи из крутых компаний