Курс 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 3.12
  2. Создание виртуальной среды
  3. Итерации в Python
  4. Вложенные генераторы в Python
  5. Лямбда-функции в Python
  6. Отладка кода
  7. Сравнение def и lambda в Python
  8. Оператор объединения словарей
  9. Установка виртуального окружения Python
  10. Динамические маршруты во Flask
  11. Colorama: окрашивание текста в Python
  12. Форматирование строк в Python
  13. Декораторы с @wraps
  14. Область видимости переменных
  15. Экспорт функций в Python
  16. Импорт в Python: список all
  17. Генерация фальшивых данных с Faker
  18. Модуль antigravity: генерация координат
  19. Исключение NotImplementedError
  20. Python: Splat-оператор и splatty-splat
  21. Python Тесты и Гайды
  22. Очистка строки в Python
  23. Названия столбцов в Python таблицах
  24. Разработка Telegram-ботов
  25. Синхронизация доступа к ресурсам
  26. Поиск самого частого элемента
  27. Использование функции enumerate()
  28. Обработка ошибок в Python
  29. Оператор walrus в Python
  30. Настройка Cron
  31. Solidity для DeFi Ethereum
  32. Переворот строки с использованием цикла
  33. Преобразование списка в словарь через генератор
  34. Непрерывная проверка в Python
  35. JSON в Python: модуль, dump, dumps, load
  36. Операторы увеличения и уменьшения переменной
  37. Списковые включения в Python
  38. Вывод букв строки в Python
  39. Преобразование чисел в восьмеричную строку
  40. Создание новых функций через partial
  41. Удаление дубликатов в pandas
  42. Декодирование строк в Python
  43. Переопределение метода __pow__
  44. Атрибуты класса и экземпляра в Python
  45. Функции all() и any() в Python
  46. kwargs в Python

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