Питхон је широко коришћен програмски језик за општу намену у новије време. Принос је уграђена кључна реч Питхон која се користи за креирање функција генератора. Његова функција генерише низ резултата. Паузира извршење програма, враћа вредност резултата позиваоцу и наставља извршење од последњег приноса. Поред тога, функција приноса шаље генерисани низ резултата у облику генераторског објекта. С друге стране, ретурн је такође уграђена кључна реч у Питхону која прекида функцију и враћа вредност позиваоцу.
Овај чланак са примерима описује разлике између приноса и приноса.
Разлике између приноса и приноса
За почетак постоје многе видљиве разлике између приноса и приноса. Хајде да прво разговарамо о чему се ради.
Повратак | Принос |
---|---|
Израз ретурн враћа позиваоцу само једну вредност. | Изјава ииелд може позиваоцу вратити низ резултата у облику генераторског објекта. |
Повратак излази из функције, а у случају петље одбацује петљу. То је последња изјава која се смешта унутар функције. | Не укида локалне променљиве функције. Обуставља извршење и враћа вредност позиваоцу и наставља извршење програма из последњег израза приноса. |
Логично, функција треба да има само наредбу ретурн. | Унутар функције може бити више изјава о приносу. |
Изјава о повратку може се покренути само једном. | Извод приноса може се покретати више пута. |
Израз ретурн налази се у редовној Питхон функцији. | Изјава приноса претвара редовну функцију у функцију генератора. |
Пример1: Повратак вс. Принос
Погледајмо сада разлику између извештаја о поврату и приносу кроз примере. У доленаведеном примеру програма користили смо више наредби за повратак. Можете приметити да ће се извршавање програма завршити након прве повратне изјаве, а остатак кода неће бити извршен.
# програм за приказ рада повратне изјаве#дефинисање променљиве броја
нум1 = 10
#дефинисање променљиве броја
нум2 = 20
#креирање функције за извођење аритметичких операција
деф матхОП ():
# израчунавање вредности збира
повратак нум1 + нум2
# израчунавање разлике
повратак нум1-нум2
# израчунавање вредности множења
повратак нум1 * нум2
# израчунавање вредности дељења
повратак нум1 / нум2
#позивање функције
испис (матхОП ())
Оутпут
У излазу се може видети да функција враћа само прву вредност, а програм се прекида.
Да бисмо извршили сличан задатак са вишеструким наредбама за повратак, морамо створити четири различите функције за сваку врсту аритметичке операције.
# програм за приказ рада повратне изјаве#дефинисање променљиве броја
нум1 = 10
#дефинисање променљиве броја
нум2 = 20
#креирање функције за извођење аритметичких операција
деф сумОП ():
# израчунавање вредности збира
повратак нум1 + нум2
деф одузми ОП ():
# израчунавање разлике
повратак нум1-нум2
деф мултиплицатионОП ():
# израчунавање вредности множења
повратак нум1 * нум2
деф дивисионОП ():
# израчунавање вредности поделе
повратак нум1 / нум2
#позивање функције збира
принт ("Вредност збира је:", сумОП ())
#позивање функције одузимања
принт ("Вредност разлике је:", одузми ОП ())
#позивање функције множења
принт ("Вредност множења је:", мултиплицатионОП ())
#позивање функције дељења
принт ("Вредност поделе је:", дивисионОП ())
Оутпут
Ове вишеструке аритметичке операције можемо изводити унутар једне функције генератора са више изјава о приносу.
# програм за приказ рада извештаја о приносу#дефинисање променљиве броја
нум1 = 10
#дефинисање променљиве броја
нум2 = 20
#креирање функције за извођење аритметичких операција
деф матхОП ():
# израчунавање вредности збира
принос нум1 + нум2
# израчунавање разлике
принос нум1-нум2
# израчунавање вредности множења
принос нум1 * нум2
# израчунавање вредности дељења
принос нум1 / нум2
#позивање функције
принт ("Штампање вредности:")
#усе фор петља за приступ вредностима из објекта генератора
за и у матхОП ():
испис (и)
Оутпут
Пример2: Повратак вс. Принос
Погледајмо још један пример изјава о повраћају и приносу. У датом примеру имамо листу бројева која се прослеђује функцији мод () као аргумент. Изводимо операцију модула на сваком броју листе и проверавамо који су то бројеви подељени са 10 враћају нулу као остатак вредности.
Прво, применимо овај пример у нашу Питхон скрипту са ретурн наредбом.
#дефинисање листе бројевамиЛист = [10,20,25,30,35,40,50]
#дефинисање функције за извођење операције модула
деф мод (миЛист):
јер сам на свом списку:
#извођење модула
ако (и% 10 == 0):
повратак и
испис (мод (миЛист))
Оутпут
Израз ретурн само позиватељу враћа први број и прекида извршење функције.
Сада, применимо исти пример у нашој Питхон скрипти са изјавом ииелд.
#дефинисање листе бројевамиЛист = [10,20,25,30,35,40,50]
#дефинисање функције за извођење операције модула
деф мод (миЛист):
јер сам на свом списку:
#извођење модула
ако (и% 10 == 0):
# изјава о приносу
принос и
фор и ин мод (миЛист):
испис (и)
Оутпут
Закључак
Закључно, повратак и принос су две уграђене Питхон кључне речи или изјаве. Наредба ретурн користи се за враћање вриједности позиваоцу из функције и окончава извршење програма, док наредба ииелд генерише објект и може позиваоцу вратити вишеструке вредности без прекида извршења програма. Овај чланак наводи све видљиве разлике између извештаја о поврату и приносу са примерима.