Курс 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. Работа с f-строками 2.0
  3. Преобразование многоуровневого словаря
  4. Сортировка и обратный порядок
  5. Работа с массивами в Python
  6. Метод enumerate() в Python
  7. Удаление знаков препинания в Python
  8. Объединение коллекций в Python
  9. Безопасные SQL-запросы в Python 3.11
  10. Явный импорт переменных
  11. Работа с кортежами в Python
  12. Логирование с Logzero
  13. PUT запрос для обновления данных
  14. Списковые включения в Python
  15. Работа с атрибутом dict
  16. Именованные кортежи в Python
  17. Очистка вывода в Python
  18. Python Метод sleep() из time
  19. Импорт модулей и пакетов в Python
  20. Распаковка аргументов в Python
  21. Разделение строки с регулярными выражениями
  22. Генераторные выражения и islice.
  23. Протокол управления контекстом
  24. Метод add для класса Vector
  25. Логические значения в Python
  26. Оператор assert в Python
  27. Принципы программирования
  28. Метод get() для словарей
  29. Итераторы в Python
  30. Тип CodeType в Python.
  31. Проблема сравнения словарей
  32. Создание таблиц в терминале с PrettyTable
  33. Управление экспортом элементов
  34. Namedtuple в Python
  35. Работа с контекстными менеджерами
  36. Списковое включение в Python
  37. Многопоточность и асинхронное программирование в Python
  38. Генерация случайных чисел в Python
  39. Поиск элементов BeautifulSoup
  40. Тернарный оператор в Python
  41. Путь к интерпретатору Python
  42. Проверка класса объекта
  43. Нахождение пересечения множеств
  44. Названия переменных
  45. Python Менеджер контекста
  46. Оператор «or» в Python

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