Python

Возврат нескольких значений из функции Python

Возврат нескольких значений из функции Python
Функция используется на любом языке программирования для многократного выполнения определенного блока кода при необходимости и правильной организации кода. Иногда это требует чтения возвращаемого значения из функции в целях программирования. Возвращаемое значение функции сохраняется в переменной. Функции Python могут возвращать как одно, так и несколько значений. В этом руководстве показано, как функции Python могут возвращать несколько значений с несколькими переменными, объектами, кортежами, списками и словарями.

Пример 1: возврат нескольких значений из функции с использованием нескольких переменных

Если вы хотите вернуть только несколько переменных из функции Python, то лучше определить эти переменные для хранения нескольких возвращаемых значений из нескольких переменных, объектов, кортежей, списков и словарей с помощью функции. В этом примере в скрипте объявлены три переменные для хранения трех возвращаемых значений. В multiVarFunc () функция используется для приема трех входных значений и возврата значений в переменные dept_name, total_std а также total_fac.

#!/ usr / bin / env python3
# Определить функцию для возврата нескольких переменных
def multiVarFunc ():
# Принимаем строковые данные
dept = input ("Введите название отдела:")
# Берем числовые данные
stdnum = int (input ("Введите общее количество студентов:"))
# Берем числовые данные
facnum = int (input ("Введите общее количество факультетов:"))
# Вернуть несколько переменных
возврат, stdnum, facnum;
# Вызвать функцию и сохранить возвращаемые значения в трех переменных
имя_отдела, total_std, total_fac = multiVarFunc ()
# Распечатать форматированный вывод возвращаемых значений
print ("\ nФакультет:% s \ nВсего студентов:% d \ nВсего факультетов:% d"% (dept_name, total_std,
total_fac))

Выход

В качестве входных используются три значения, а выходные значения печатаются после форматирования.

Пример 2: возврат нескольких значений из функции с использованием кортежа

В следующем сценарии показано, как использовать кортеж для возврата нескольких значений из функции. Если вы хотите вернуть много значений из функции, то это лучший вариант. Здесь tupleFunc () функция используется для получения четырех входных значений от пользователя и возврата значений в виде кортежа вызывающей стороне. Возвращаемые значения будут сохранены в переменной кортежа с именем tupleVar и значения будут напечатаны позже.

#!/ usr / bin / env python3
# Определить функцию для возврата нескольких переменных
def tupleFunc ():
# Принимаем строковые данные
stdID = input ("Введите идентификатор студента:")
# Принимаем строковые данные
stdName = input ("Введите имя студента:")
# Принимаем целочисленные данные
stdBatch = int (input ("Введите номер пакета:"))
# Берем плавающие данные
stdCGPA = float (input ("Введите CGPA:"))
# Возвращаем несколько переменных как кортеж
возврат (stdID, stdName, stdBatch, stdCGPA)
# Вызвать функцию и сохранить возвращаемые значения в кортеж
tupleVar = tupleFunc ()
# Распечатать форматированный вывод кортежа
print ("\ n ID:% s \ n Имя:% s \ n Пакет:% d \ n CGPA:% 4.2f "% (tupleVar [0], tupleVar [1], tupleVar [2],
tupleVar [3]))

Выход

Четыре входных значения принимаются в качестве входных, а затем печатаются форматированные выходные значения.

Пример 3: возврат нескольких значений из функции с использованием списка

В следующем сценарии показано, как использовать список для возврата нескольких значений из функции. Это еще один вариант возврата множества значений из функции. В listFunc () функция используется в скрипте для получения двух целых чисел от пользователя и вычисления сложения, вычитания, умножения и деления этих чисел. Затем эти четыре результата возвращаются в виде списка из функции. Переменная списка, listVar используется для хранения возвращаемых значений и печати значений.

#!/ usr / bin / env python3
 
# Определить функцию для возврата нескольких значений в виде списка
def listFunc ():
# Берем числовые данные
number1 = float (input ("Введите любое число:"))
# Берем числовые данные
число2 = с плавающей запятой (ввод ("Введите любое число:"))
 
сложение = число1 + число2
вычитание = число1 - число2
умножение = число1 * число2
деление = число1 / число2
 
# Возвращаем несколько переменных в виде списка
return [число1, число2, сложение, вычитание, умножение, деление]
 
# Вызвать функцию и сохранить возвращаемые значения в кортеж
listVar = listFunc ()
# Распечатать форматированный вывод данных списка
print ("\ n% 5.2f +% 5.2f =% 5.2f "% (listVar [0], listVar [1], listVar [2]))
печать ("% 5.2f -% 5.2f =% 5.2f "% (listVar [0], listVar [1], listVar [3]))
печать ("% 5.2f x% 5.2f =% 5.2f "% (listVar [0], listVar [1], listVar [4]))
печать ("% 5.2f /% 5.2f =% 5.2f "% (listVar [0], listVar [1], listVar [5]))

Выход

После взятия двух чисел 67 и 23.7 появится следующий вывод.

Пример 4: возврат нескольких значений из функции с использованием словаря

В следующем сценарии показано, как использовать словарь для возврата нескольких значений из функции. Это еще один вариант возврата множества значений из функции. Переменная объекта словаря с именем dictVar объявлен внутри функции. Переменной присваиваются три значения, которые возвращают dicVar звонящему. Далее печатаются словарные значения.

#!/ usr / bin / env python3
# Определить функцию для возврата нескольких значений в виде словаря
def dictFunc ():
# Объявить словарную переменную
dictVar = dict ();
# Присваиваем некоторые значения
dictVar ['name'] = "Келли Али"
dictVar ['age'] = 46
dictVar ['профессия'] = 'Певец'
# Возвращаем словарь как возвращаемые значения
вернуть dictVar
 
# Вызвать функцию и сохранить возвращаемые значения в переменной словаря
dictValues ​​= dictFunc ()
# Распечатать значения словаря
print ("Значения словаря: \ n", dictValues)

Выход

Следующий вывод появится после запуска скрипта.

Пример 5: возврат нескольких значений из функции с помощью объекта

Класс используется с функцией для возврата нескольких значений в виде объекта из функции в следующем скрипте. Когда objFunc () вызовы функций, функция инициализирует объект из Сотрудники class и возвращает объект вызывающей стороне. Далее будут напечатаны значения свойств объекта.

#!/ usr / bin / env python3
 
# Определить класс для инициализации объекта
класс Сотрудники:
def __init __ (сам):
себя.name = "Мосароф Карим"
себя.post = "Менеджер"
себя.зарплата = 50000
 
# Определить функцию для возврата значений в виде объекта
def objFunc ():
return Сотрудники ()
 
# Вызвать функцию для установки объектной переменной
objVar = objFunc ()
 
# Распечатать форматированный вывод
print ("\ n Имя сотрудника:", objVar.name, "\ n", "Post:", objVar.post, "\ n", "Зарплата:",
objVar.оплата труда)

Выход

Следующий вывод появится после запуска скрипта.

Заключение

Несколько значений, возвращаемых функцией, могут использоваться в скрипте для различных целей. В этом руководстве показаны некоторые из различных способов возврата нескольких значений из функции в Python.

Посмотреть авторское видео: здесь

OpenTTD против Simutrans
Создание собственного транспортного симулятора может быть увлекательным, расслабляющим и чрезвычайно увлекательным занятием. Вот почему вам нужно попр...
Учебник OpenTTD
OpenTTD - одна из самых популярных бизнес-симуляторов. В этой игре вам нужно создать замечательный транспортный бизнес. Тем не менее, вы начнете в нач...
SuperTuxKart для Linux
SuperTuxKart - отличная игра, созданная для того, чтобы бесплатно познакомить вас с Mario Kart в вашей системе Linux. Играть в нее довольно сложно и в...