Python

Доходност на Python срещу. Връщане

Доходност на Python срещу. Връщане

Python е широко използваният език за програмиране с общо предназначение в последно време. Доходността е вградена ключова дума Python, която се използва за създаване на функции на генератора. Неговата функция генерира поредица от резултати. Той поставя на пауза изпълнението на програмата, изпраща стойността на резултата обратно на повикващия и възобновява изпълнението от последния принос. Освен това функцията за добив изпраща генерираната поредица от резултати под формата на обект-генератор. От друга страна, връщането също е вградена ключова дума в Python, която прекратява функцията и изпраща стойността обратно на повикващия.

Тази статия очертава разликите между доходността и възвръщаемостта с примери.

Разлики между доходност и възвръщаемост

Като начало има много видни разлики между доходността и възвръщаемостта. Нека първо да обсъдим кои са това.

Връщане Добив
Операторът return връща само една стойност на повикващия. Отчетът yield може да върне поредица от резултати на повикващия под формата на обект-генератор.
Връщането излиза от функцията и в случай на цикъл отхвърля цикъла. Това е последният оператор, който се поставя във функцията. Това не премахва локалните променливи на функцията. Той спира изпълнението и изпраща стойността обратно на повикващия и продължава изпълнението на програмата от последния отчет за доходност.
Логично, функция трябва да има само оператор return. Във функцията може да има повече от един оператор за добив.
Операторът return може да се изпълнява само веднъж. Отчетът за доходност може да се изпълнява няколко пъти.
Операторът return се поставя вътре в обикновена функция на Python. Операторът yield преобразува обикновена функция в функция генератор.

Пример1: Връщане срещу. Добив

Сега нека видим разликата между операторите return и yield чрез примери. В примерната програма, дадена по-долу, използвахме множество оператори за връщане. Можете да забележите, че изпълнението на програмата ще приключи след първия оператор за връщане, а останалата част от кода няма да бъде изпълнена.

# а програма за показване на работата на оператора return

#defining числова променлива

num1 = 10
#defining числова променлива

num2 = 20
#creating функция за извършване на аритметични операции

def mathOP ():
# изчисляване на стойността на сумата

връщане num1 + num2
# изчисляване на разликата

връщане num1-num2
# изчисляване на стойността на умножение

връщане num1 * num2
# изчисляване на стойността на делението

връщане num1 / num2
# извикване на функцията

печат (mathOP ())

Изход

В изхода може да се види, че функцията връща само първата стойност и програмата се прекратява.

За да изпълним подобна задача с множество оператори за връщане, трябва да създадем четири различни функции за всеки тип аритметична операция.

# а програма за показване на работата на оператора return

#defining числова променлива

num1 = 10
#defining числова променлива

num2 = 20
#creating функция за извършване на аритметични операции

def sumOP ():
# изчисляване на стойността на сумата

връщане num1 + num2
def изваждане на OP ():
# изчисляване на разликата

връщане num1-num2
def multiplicationOP ():
# изчисляване на стойността на умножение

връщане num1 * num2
def divisionOP ():
# изчисляване на стойността на делението

връщане num1 / num2
#calling функцията за сумиране

print ("Стойността на сумата е:", sumOP ())
# извикване на функцията за изваждане

print ("Стойността на разликата е:", subtractOP ())
# извикване на функцията за умножение

print ("Стойността за умножение е:", multiplicationOP ())
# извикване на функцията за разделяне

print ("Стойността на разделянето е:", divisionOP ())

Изход

Можем да изпълняваме тези множество аритметични операции в рамките на една генераторна функция с множество изявления за добив.

# програма за показване на работата на отчет за добива

#defining числова променлива

num1 = 10
#defining числова променлива

num2 = 20
#creating функция за извършване на аритметични операции

def mathOP ():
# изчисляване на стойността на сумата

добив num1 + num2
# изчисляване на разликата

добив num1-num2
# изчисляване на стойността на умножение

добив num1 * num2
# изчисляване на стойността на делението

добив num1 / num2
# извикване на функцията

print ("Печат на стойностите:")
# Използване на цикъл за достъп до стойностите от обекта на генератора

за i в mathOP ():
печат (i)

Изход

Пример2: Връщане срещу. Добив

Нека да видим друг пример за изявления за връщане и доходност. В дадения пример имаме списък с числа, който се предава на функцията mod () като аргумент. Извършваме модулната операция за всеки номер от списъка и проверяваме кои са тези числа, когато се дели на 10, връща нула като остатъчна стойност.

Първо, нека приложим този пример в нашия Python скрипт с оператор return.

#defining a list of numbers

myList = [10,20,25,30,35,40,50]
#defining функция за извършване на операция модул

def mod (myList):
за аз в моя списък:
# изпълнение на модулен режим

ако (i% 10 == 0):
връщане i
печат (мод (myList))

Изход

Операторът return връща само първия номер на повикващия и прекратява изпълнението на функцията.

Сега, нека приложим същия пример в нашия скрипт на Python с изявлението yield.

#defining a list of numbers

myList = [10,20,25,30,35,40,50]
#defining функция за извършване на операция модул

def mod (myList):
за аз в моя списък:
# изпълнение на модулен режим

ако (i% 10 == 0):
# отчетът за добива

добив i
за i в мода (myList):
печат (i)

Изход

Заключение

В заключение, връщането и доходността са две вградени ключови думи или изявления на Python. Операторът return се използва за връщане на стойността на повикващия от функция и прекратява изпълнението на програмата, докато изявлението yield генерира обект-генератор и може да върне множество стойности на повикващия, без да прекратява изпълнението на програмата. Тази статия изброява всички видни разлики между отчетите за възвръщаемост и доходност с примери.

Как да инсталирате и играете Doom на Linux
Въведение в Doom Серията Doom възниква през 90-те години след пускането на оригиналния Doom. Това беше незабавен хит и от този момент нататък серията ...
Vulkan за потребители на Linux
С всяко ново поколение графични карти виждаме, че разработчиците на игри преместват границите на графичната вярност и се приближават една крачка до фо...
OpenTTD срещу Simutrans
Създаването на собствена транспортна симулация може да бъде забавно, релаксиращо и изключително примамливо. Ето защо трябва да сте сигурни, че изпробв...