Курс 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. Сравнение def и lambda-функций
  3. Сравнение строк в Python
  4. Обработка исключений в Python
  5. Структура данных deque в Python
  6. Преобразование Excel в PDF с Spire.XLS
  7. Работа с дробями в Python
  8. Непрерывная проверка в Python
  9. Работа со строками в Python
  10. Генератор данных в Keras
  11. Особенности множеств в Python
  12. Работа с изменяемыми коллекциями
  13. Метод Event.wait() в Python
  14. Объединение, распаковка и деструктуризация
  15. Работа с атрибутом dict
  16. Деление в Python
  17. Возврат значений из генератора
  18. Импорт с альтернативным именем
  19. Множественное наследование в Python
  20. Изменение элемента списка
  21. Динамическая типизация в Python
  22. Создание списка через итерацию
  23. Цикл for с enumerate() в Python
  24. Pillow: работа с изображениями
  25. Роль запятой в Python
  26. Enum в Python
  27. Python: Splat-оператор и splatty-splat
  28. Форматирование объектов с модулем pprint
  29. Метод getitem для доступа к элементам последовательности
  30. Конкатенация строк в Python
  31. Список и кортеж в Python
  32. Оптимизация памяти в Python
  33. Метод get для словаря
  34. Подсчет количества элементов в списке
  35. Фильтрация списков с itertools
  36. Flask: создание веб-приложений
  37. Перезагрузка оператора в Python
  38. Удаление символа из строки
  39. Оптимизация гиперпараметров с Scikit Optimize
  40. Настройка нарезки списков
  41. Оптимизация памяти с slots
  42. Импорт модуля из другого каталога
  43. Измерение времени выполнения кода
  44. Сортировка с параметром key
  45. Декораторы в Python
  46. Операции с матрицами в Python
  47. Функция zip() в Python
  48. Создание инструмента обнаружения плагиата

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