Вопрос проверяет знание способов возвращать несколько результатов из функции и их практическое применение.
В Python можно возвращать несколько значений через tuple, словарь или объект. Чаще всего используется кортеж с распаковкой. Для более сложных структур применяют dataclass или namedtuple. Выбор зависит от количества данных и читаемости кода.
В Python существует несколько способов вернуть несколько значений из функции.
Самый распространённый способ.
def get_user():
return 1, "Alex"
user_id, name = get_user()
Python автоматически упаковывает значения в кортеж.
Подходит, когда важно имя поля:
def get_user():
return {"id": 1, "name": "Alex"}
Плюсы:
понятно, что означает каждое поле
Минусы:
меньше типобезопасности
Хорошо подходит для структурированных данных.
from dataclasses import dataclass
@dataclass
class User:
id: int
name: str
Функция:
def get_user() -> User:
return User(1, "Alex")
Обычно:
tuple — простые случаи
dict — динамические данные
dataclass — сложные структуры
Python предоставляет несколько способов возвращать несколько значений, и выбор зависит от сложности структуры данных и требований к читаемости.