return x, y, z
вернет кортеж из трех значений. Получатель может затем распаковать эти значения: a, b, c = my_function()
.
В Python функция может возвращать несколько значений, используя несколько способов. Самый распространенный и идиоматичный способ - это возврат кортежа (tuple). Кортеж - это упорядоченная, неизменяемая последовательность элементов.
Пример с кортежем:
def my_function(x, y):
sum_result = x + y
product_result = x * y
return sum_result, product_result # Возвращаем кортеж
result = my_function(5, 3)
print(result) # Вывод: (8, 15)
print(result[0]) # Вывод: 8
print(result[1]) # Вывод: 15
# Распаковка кортежа при присваивании
sum_value, product_value = my_function(5, 3)
print(sum_value) # Вывод: 8
print(product_value) # Вывод: 15
В этом примере функция `my_function` возвращает два значения, `sum_result` и `product_result`, которые автоматически упаковываются в кортеж. При вызове функции мы можем либо получить весь кортеж целиком, либо распаковать его в отдельные переменные.
Другие способы:
Пример со словарем:
def my_function(x, y):
sum_result = x + y
product_result = x * y
return {'sum': sum_result, 'product': product_result}
result = my_function(5, 3)
print(result) # Вывод: {'sum': 8, 'product': 15}
print(result['sum']) # Вывод: 8
print(result['product']) # Вывод: 15
Вывод: Кортеж - это наиболее часто используемый и рекомендованный способ возврата нескольких значений в Python, так как он лаконичен, эффективен и подчеркивает неизменяемость возвращаемых данных. Однако, если требуется именование возвращаемых значений, лучше использовать словарь.