Курс Python → Возвращение нескольких значений через кортеж или класс

В Python функции могут возвращать несколько значений, не используя словарь, список или класс. Для этого можно воспользоваться кортежем. Например, если у нас есть функция, которая должна вернуть имя и дату рождения, мы можем написать что-то вроде:

def get_person_info():
    name = "John"
    birthdate = "01-01-2000"
    return name, birthdate

Этот код вернет кортеж с двумя значениями — имя и датой рождения. Но если нам нужно вернуть больше трех значений, более удобным будет использовать класс. Например, если мы хотим вернуть имя, дату рождения и адрес:

class PersonInfo:
    def __init__(self, name, birthdate, address):
        self.name = name
        self.birthdate = birthdate
        self.address = address

def get_person_info():
    name = "John"
    birthdate = "01-01-2000"
    address = "123 Street, City"
    return PersonInfo(name, birthdate, address)

Таким образом, мы создаем класс PersonInfo с нужными атрибутами и возвращаем экземпляр этого класса из функции. Это делает код более читаемым и удобным для работы с большим количеством значений.

Использование класса также позволяет нам легко расширять функциональность и добавлять новые атрибуты при необходимости. Это делает код более гибким и поддерживаемым в долгосрочной перспективе.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Генераторы в Python
  2. Python-dateutil — работа с датами
  3. Переворот строки с использованием цикла
  4. Создание словаря и множества
  5. Функция enumerate() в Python
  6. PATCH-запрос с библиотекой requests
  7. Метод Enumerate() для списков
  8. Работа с каталогами в Python
  9. Форматирование строк с помощью f-строк
  10. Основные методы NumPy
  11. Создание и использование модулей в Python
  12. Извлечение аудио из видео
  13. Встраивание HTML в Jupyter Notebook
  14. Управление фоновыми задачами в Python
  15. Изменяемые и неизменяемые объекты
  16. Метод pos в Python
  17. Перевод двоичного кода в целое число
  18. Срез списка в Python
  19. Оформление кода по PEP 8
  20. Повторение элементов в Python
  21. Вставка переменных в шаблоны Flask
  22. Перегрузка операторов в Python
  23. Создание циклической ссылки
  24. Функции с дополнением
  25. Функция reduce() из модуля functools
  26. Динамическая типизация в Python
  27. Безопасные SQL-запросы в Python 3.11
  28. Работа с timedelta в Python
  29. Получение текущей директории
  30. Установка виртуального окружения Python
  31. Python reversed() функция
  32. Проблема с изменяемыми аргументами
  33. Работа с Event() в threading
  34. Создание генераторов в Python
  35. Лямбда-функции для min/max
  36. Декоратор total_ordering для класса Point
  37. Генераторы по генератору
  38. Python union() функция — объединение множеств
  39. Удаление элементов по срезу
  40. Хранение переменных в словаре.
  41. Рациональные числа в Python
  42. Аннотации типов в Python
  43. Парсинг веб-страниц с Beautiful Soup
  44. Улучшение читаемости кода в Python
  45. Работа со строками
  46. Работа с изображениями PIL
  47. Создание новых списков через list comprehensions

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