Примери функција Питхон: Позив, увлачење, аргументи & амп; Повратне вредности

Преглед садржаја:

Anonim

Шта је функција у Питхону?

Функција у Питхон је део кода који ради када се референце. Користи се за употребу кода на више од једног места у програму. Такође се назива методом или поступком. Питхон пружа многе уграђене функције попут принт (), инпут (), цомпиле (), екец () итд., Али такође даје слободу да креирате сопствене функције.

У овом упутству ћемо научити

  • Како дефинисати и позвати функцију у Питхону
  • Значај увлачења (размака) у Питхон-у
  • Како функција враћа вредност?
  • Аргументи у функцијама

Како дефинисати и позвати функцију у Питхону

Функција у Питхону је дефинисана изразом „деф“, а затим именом функције и заградама (())

Пример:

Дефинишемо функцију помоћу наредбе "деф фунц1 (): и позовимо функцију. Резултат функције биће "Учим Питхон функцију".

Функција принт фунц1 () позива нашу деф фунц1 (): и исписује наредбу „ Учим Питхон функцију Ноне “.

У Питхону постоје правила за дефинисање функције.

  • Све аргументе или улазне параметре треба ставити у ове заграде
  • Наредба прве функције може бити необавезна наредба-доцстринг или низ документације функције
  • Код унутар сваке функције започиње двотачком (:) и треба га увући (размак)
  • Израз ретурн (израз) излази из функције, опционално прослеђујући вредност позиваоцу. Наредба ретурн без аргумената је исто што и ретурн Ноне.

Значај увлачења (размака) у Питхон-у

Пре него што се упознамо са Питхон функцијама, важно је да разумемо правило увлачења да бисмо декларисали Питхон функције и та правила су применљива на друге елементе Питхона, као што су декларисање услова, петљи или променљиве.

Питхон следи одређени стил увлачења да би дефинисао код, с обзиром да Питхон функције немају експлицитни почетак или завршетак попут витичастих заграда да означе почетак и заустављање функције, морају се ослонити на ово увлачење . Овде узимамо једноставан пример са наредбом „принт“. Када напишемо функцију „принт“ одмах испод деф фунц 1 (): Показаће „ грешка увлачења: очекује се увучени блок “.

Сада, када додате увлаку (размак) испред функције „испис“, требало би да се штампа онако како се очекивало.

Барем је један угао довољан да ваш код успешно функционише. Али као најбољу праксу, препоручљиво је оставити око 3-4 увлаке да бисте позвали своју функцију .

Такође је неопходно да док декларишете увлачење, морате задржати исто увлачење за остатак кода . На пример, у доњем снимку екрана када другу изјаву називамо „још увек у функц1“ и када није проглашена одмах испод прве изјаве за испис, приказаће се грешка увлачења „униндент се не подудара ни са једним другим нивоом увлачења“.

Сада, када примијенимо исто увлачење за обје изјаве и поравнамо их у исти ред, то даје очекивани излаз.

Како функција враћа вредност?

Наредба ретурн у Питхону одређује коју вриједност треба вратити позиваоцу функције.

Да разумемо ово на следећем примеру

Корак 1) Овде - видимо када функција није „ретурн“. На пример, желимо квадрат од 4, а он треба да да одговор „16“ када се код изврши. То даје када једноставно користимо „принт к * к“ код, али када позовете функцију „принт скуаре“ даје „Ноне“ као излаз. То је зато што када позовете функцију, рекурзија се не дешава и пада са краја функције. Питхон враћа "Ноне" ако није успео на крају функције.

Корак 2) Да бисмо ово учинили јаснијим, замењујемо наредбу за штампу наредбом за додељивање. Проверимо излаз.

Када покренете наредбу „принт скуаре (4)“, она заправо враћа вредност објекта, јер овде немамо ниједну одређену функцију коју бисмо прегазили, она враћа „Ноне“.

Корак 3) Овде ћемо видети како да вратимо излаз помоћу наредбе „ретурн“. Када користите функцију "ретурн" и извршите код, она ће дати излаз "16."

Корак 4) Функције у Питхону су саме по себи објекат и објекат има неку вредност. Видећемо овде како се Питхон односи према објекту. Када покренете наредбу "принт скуаре", она враћа вредност објекта. С обзиром да нисмо проследили ниједан аргумент, немамо ниједну одређену функцију коју бисмо овде прегазили, она враћа подразумевану вредност (0к021Б2Д30) која је локација објекта. У практичном програму Питхон, ово вероватно никада нећете морати учинити.

Аргументи у функцијама

Аргумент је вредност која се преноси функцији када је позвана.

Другим речима, на страни која позива је аргумент, а на функцији је параметар.

Погледајмо како Питхон Аргс ради -

Корак 1) Аргументи су декларисани у дефиницији функције. Док позивате функцију, можете проследити вредности за те аргументе као што је приказано доле

Корак 2) Да бисте прогласили подразумевану вредност аргумента, доделите му вредност у дефиницији функције.

Пример: к нема подразумеване вредности. Подразумеване вредности и = 0. Када испоручујемо само један аргумент док позивамо функцију множења, Питхон додељује испоручену вредност к, а задржава вредност и = 0. Отуда је множење к * и = 0

Корак 3) Овог пута ћемо променити вредност у и = 2 уместо подразумеване вредности и = 0 и вратиће излаз као (4к2) = 8.

Корак 4) Такође можете да промените редослед којим се аргументи могу проследити у Питхону. Овде смо преокренули редослед вредности к и и на к = 4 и и = 2.

Корак 5) Вишеструки аргументи се такође могу проследити као низ. Овде у примеру позивамо више аргумената (1,2,3,4,5) позивањем функције (* аргс).

Пример: Прогласили смо више аргумената као број (1,2,3,4,5) када позивамо функцију (* аргс); исписује излаз као (1,2,3,4,5)

Савети :

  • У Питхону 2.7. преоптерећење функције није подржано у Питхону. Преоптерећење функције је способност стварања више метода истог имена са различитом имплементацијом. Преоптерећење функције је у потпуности подржано у Питхон 3-у
  • Постоји прилична збрка између метода и функција. Методе у Питхону повезане су са објектним инстанцама, док функција није. Када Питхон позове методу, он веже први параметар тог позива на одговарајућу референцу објекта. Једноставним речима, самостална функција у Питхону је „функција“, док је функција која је атрибут класе или инстанце „метода“.

Ево комплетног Питхон 3 кода

#define a functiondef func1():print ("I am learning Python function")print ("still in func1")func1()def square(x):return x*xprint(square(4))def multiply(x,y=0):print("value of x=",x)print("value of y=",y)return x*yprint(multiply(y=2,x=4))

Ево комплетног Питхон 2 кода

#define a functiondef func1():print " I am learning Python function"print " still in func1"func1()def square(x):return x*xprint square(4)def multiply(x,y=0):print"value of x=",xprint"value of y=",yreturn x*yprint multiply(y=2,x=4)

Резиме:

Функција у Питхону је део кода за вишекратну употребу који се користи за извршавање појединачне, повезане радње. У овом чланку ћемо видети

  • Функција дефинисана деф наредбом
  • Блок кода у свакој функцији започиње двотачком (:) и треба га увући (размак)
  • Све аргументе или улазне параметре треба ставити у ове заграде итд.
  • Најмање једно увлачење треба оставити пре кода након декларисања функције
  • Исти стил увлачења треба одржавати у цијелом коду унутар функције деф
  • За најбоље праксе, три или четири увлаке сматрају се најбољим пре изјаве
  • Наредбу "ретурн" можете користити за враћање вредности у позив функције.
  • Питхон ће исписати случајну вредност попут (0к021Б2Д30) када аргумент није достављен позивајућој функцији. Пример „функција штампања“.
  • На страни која позива, то је аргумент, а на функцији је параметар
  • Подразумевана вредност у аргументу - Када испоручујемо само један аргумент док позивамо функцију множења или било коју другу функцију, Питхон подразумевано додељује други аргумент
  • Питхон вам омогућава и да обрнете редослед аргумента