Курс 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. Сортировка с помощью key
  2. Блок else в Python
  3. Создание словарей с defaultdict
  4. Удаление элемента из списка
  5. Функции в Python: создание и вызов
  6. Декораторы в Python
  7. Нан-рефлексивность в Python
  8. Работа с файлами в Python
  9. Отладка в командной строке
  10. Библиотека sh: использование команд bash в Python
  11. Получение текущего времени в Python
  12. Enum в Python: создание и использование перечислений
  13. Python Ellipsis использование
  14. Создание и использование ChainMap
  15. Методы classmethod и staticmethod
  16. Разделение строки на пары ключ-значение.
  17. Логирование с Logzero
  18. Работа с WindowsPath()
  19. Удаление falsy-значений из списка с помощью filter
  20. Инвертирование словаря
  21. Операторы увеличения и уменьшения в Python
  22. Разбиение строки в Python
  23. Сравнение строк в Python
  24. Функция zip() — объединение последовательностей
  25. Импорт модулей в Python 3.12
  26. Работа с кортежами
  27. Подписка на каналы разработчиков
  28. Отправка HTTP-запросов с User-Agent
  29. Работа с OpenCV
  30. Модуль xkcd: добавление юмора в Python
  31. Множества и frozenset
  32. Логирование с Loguru
  33. Навыки Python: строки, типы данных
  34. Аннотации типов в Python
  35. Форматирование строк в Python
  36. Работа с очередями в Python
  37. Очистка данных в Python
  38. Разность множеств
  39. Работа с базами данных SQLite
  40. Преобразование в float
  41. Перемещение и удаление файлов в Python
  42. Установка random seed в Python
  43. Типы возвращаемых значений в Python
  44. Логирование с Logzero
  45. Подсчет элементов с помощью Counter
  46. Строки в Python: апострофы и кавычки
  47. Протокол управления контекстом

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