Курс 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. Основные операции с Numpy
  3. Руководство по библиотеке pydantic
  4. Декодирование байтов в строку
  5. Работа с файлами в Python
  6. Обработка исключения UnboundLocalError
  7. Бинарный поиск
  8. Работа с множествами в Python
  9. Слияние словарей в Python 3.9
  10. Применение функции к элементам списка
  11. Работа со словарями с defaultdict из collections
  12. Отображение HTML кода в Python
  13. Работа с срезами в Python
  14. Функция zip() в Python
  15. Функции map() и reduce() в Python
  16. Замеры производительности в Python
  17. Python groupby() из itertools: работа с повторяющимися элементами
  18. Работа с изображениями PIL
  19. Математические функции в Python
  20. Оператор распаковки в Python
  21. Оптимизация гиперпараметров с Scikit Optimize
  22. Замыкания в Python
  23. Метод join для наборов
  24. Списки в Python: синтаксис представления
  25. Генераторы в Python
  26. Итерация по копии коллекции
  27. Сохранение и загрузка модели в PyTorch
  28. PATCH-запрос с библиотекой requests
  29. GitHub в Telegram: подписка на уведомления
  30. Создание матрицы в Python
  31. Блок try…finally в Python
  32. Поиск всех индексов подстроки
  33. Numpy: разбиение массивов
  34. Хешируемые ключи в Python
  35. Howdoi — получение ответов из терминала
  36. Импорт модулей и пакетов в Python
  37. Поиск наиболее частого элемента в списке
  38. Метод is_absolute() для PurePath
  39. Работа с коллекциями Python
  40. Подсказки типов в Python
  41. Управление ресурсами в Python
  42. Преобразование списков в словарь
  43. Форматирование строк в Python
  44. Основные операции с библиотекой Numpy
  45. Проверка наличия элемента в списке
  46. Ограничение ресурсов в Python
  47. Разделение строк методом split()

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