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

Return Multiple Values From Python Function



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

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

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







#! / usr / bin / env python3

# Определить функцию для возврата нескольких переменных
defmultiVarFunc():
# Принимаем строковые данные
отделзнак равно Вход('Введите название отдела:')
# Берем числовые данные
stdnumзнак равно int(Вход('Введите общее количество студентов:'))
# Берем числовые данные
факнумзнак равно int(Вход('Введите общее количество факультетов:'))
# Вернуть несколько переменных
возвращениеотдел,stdnum,факнум;

# Вызвать функцию и сохранить возвращаемые значения в трех переменных
dept_name,total_std,total_facзнак равноmultiVarFunc()
# Распечатать форматированный вывод возвращаемых значений
Распечатать(' пОтдел:% s пВсего студентов:% d пВсего факультетов:% d '%(dept_name,total_std,
total_fac))

Выход



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







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

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

#! / usr / bin / env python3

# Определить функцию для возврата нескольких переменных
deftupleFunc():
# Принимаем строковые данные
stdIDзнак равно Вход('Введите идентификатор студента:')
# Принимаем строковые данные
stdNameзнак равно Вход('Введите имя студента:')
# Принимаем целочисленные данные
stdBatchзнак равно int(Вход('Введите номер партии:'))
# Берем плавающие данные
stdCGPAзнак равно плавать(Вход('Введите CGPA:'))
# Возвращаем несколько переменных как кортеж
возвращение (stdID,stdName,stdBatch,stdCGPA)

# Вызвать функцию и сохранить возвращаемые значения в кортеж
tupleVarзнак равноtupleFunc()
# Распечатать форматированный вывод кортежа
Распечатать(' пID:% s пИмя:% s пПакет:% d пCGPA:% 4.2f '%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

Выход



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

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

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

#! / usr / bin / env python3

# Определить функцию для возврата нескольких значений в виде списка
deflistFunc():
# Берем числовые данные
номер 1знак равно плавать(Вход('Введите любой номер:'))
# Берем числовые данные
номер 2знак равно плавать(Вход('Введите любой номер:'))

добавлениезнак равночисло1 + число2
вычитаниезнак равночисло1 - число2
умножениезнак равночисло1 * число2
разделениезнак равночисло1 / число2

# Возвращаем несколько переменных в виде списка
возвращение [номер 1,номер 2,добавление,вычитание,умножение,разделение]

# Вызвать функцию и сохранить возвращаемые значения в кортеж
listVarзнак равноlistFunc()
# Распечатать форматированный вывод данных списка
Распечатать(' п% 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
# Определить функцию для возврата нескольких значений в виде словаря
defdictFunc():
# Объявить словарную переменную
dictVarзнак равно диктовать();
# Присваиваем некоторые значения
dictVar['имя'] знак равно 'Келли Али'
dictVar['возраст'] знак равно 46
dictVar['профессия'] знак равно 'Певица'
# Возвращаем словарь как возвращаемые значения
возвращениеdictVar

# Вызвать функцию и сохранить возвращаемые значения в переменной словаря
dictValuesзнак равноdictFunc()
# Распечатать значения словаря
Распечатать('Значения словаря: п',dictValues)

Выход

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

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

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

#! / usr / bin / env python3

# Определить класс для инициализации объекта
классСотрудники:
def __в этом__(себя):
себя.имя знак равно 'Мосароф Карим'
себя.Почта знак равно 'Менеджер'
себя.зарплата знак равно 50 000

# Определить функцию для возврата значений в виде объекта
defobjFunc():
возвращениеСотрудники()

# Вызвать функцию для установки объектной переменной
objVarзнак равноobjFunc()

# Распечатать форматированный вывод
Распечатать(' пИмя сотрудника:',objVar.имя,' п','Почта:',objVar.Почта,' п','Зарплата:',
objVar.зарплата)

Выход

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

Заключение

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

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