Python funkcijas (def): Definīcija ar piemēriem

Šajā rakstā jūs uzzināsit par funkcijām, kas ir funkcija, funkciju sintaksi, komponentiem un veidiem. Jūs arī iemācīsities izveidot funkciju Python.

Video: ievads Python funkcijās

Kas ir funkcija Python?

Programmā Python funkcija ir saistītu paziņojumu grupa, kas veic noteiktu uzdevumu.

Funkcijas palīdz sadalīt mūsu programmu mazākos un modulāros gabalos. Kad mūsu programma kļūst arvien lielāka, funkcijas padara to organizētāku un pārvaldāmāku.

Turklāt tas novērš atkārtošanos un padara kodu atkārtoti izmantojamu.

Funkcijas sintakse

 def function_name (parametri): "" "docstring" "" paziņojums (-i)

Iepriekš parādīta funkciju definīcija, kas sastāv no šādiem komponentiem.

  1. Atslēgvārds, defkas iezīmē funkcijas galvenes sākumu.
  2. Funkcijas nosaukums, lai unikāli identificētu funkciju. Funkciju nosaukšana notiek pēc tiem pašiem noteikumiem, kā rakstīt identifikatorus Python.
  3. Parametri (argumenti), caur kuriem mēs funkcijai nododam vērtības. Tie nav obligāti.
  4. Kols (:), lai atzīmētu funkcijas galvenes beigas.
  5. Izvēles dokumentācijas virkne (docstring), lai aprakstītu funkcijas darbību.
  6. Viens vai vairāki derīgi pitona priekšraksti, kas veido funkcijas ķermeni. Izrakstiem jābūt ar tādu pašu atkāpes līmeni (parasti 4 atstarpes).
  7. Neobligāts returnpaziņojums, lai atgrieztu vērtību no funkcijas.

Funkcijas piemērs

 def greet(name): """ This function greets to the person passed in as a parameter """ print("Hello, " + name + ". Good morning!")

Kā izsaukt funkciju pitonā?

Kad mēs esam definējuši funkciju, mēs to varam izsaukt no citas funkcijas, programmas vai pat Python uzvednes. Lai izsauktu funkciju, mēs vienkārši ierakstām funkcijas nosaukumu ar atbilstošiem parametriem.

 >>> greet('Paul') Hello, Paul. Good morning!

Piezīme. Mēģiniet palaist iepriekš minēto kodu Python programmā ar funkcijas definīciju, lai redzētu izvadi.

 def greet(name): """ This function greets to the person passed in as a parameter """ print("Hello, " + name + ". Good morning!") greet('Paul')

Instrukcijas

Pirmo virkni pēc funkcijas galvenes sauc par docstring, un tā ir saīsne no dokumentācijas virknes. To īsi izmanto, lai izskaidrotu, ko funkcija dara.

Lai gan dokumentācija nav obligāta, tā ir laba programmēšanas prakse. Vienmēr dokumentējiet savu kodu, ja vien nevarat atcerēties, ko vakariņojāt pagājušajā nedēļā.

Iepriekš minētajā piemērā mums ir docstring tieši zem funkcijas galvenes. Mēs parasti izmantojam trīskārtīgas pēdiņas, lai docstring varētu izstiepties līdz vairākām rindām. Šī virkne mums ir pieejama kā __doc__funkcijas atribūts.

Piemēram :

Mēģiniet palaist šo Python apvalkā, lai redzētu izvadi.

 >>> print(greet.__doc__) This function greets to the person passed in as a parameter

Lai uzzinātu vairāk par docstrings Python, apmeklējiet Python Docstrings.

Atgriešanās paziņojums

returnApgalvojums tiek izmantots, lai izietu funkciju un doties atpakaļ uz vietu, no kurienes tas sauca.

Atgriešanās sintakse

 atgriezties (izteiksmes_ saraksts)

Šajā paziņojumā var būt izteiksme, kas tiek novērtēta, un vērtība tiek atgriezta. Ja paziņojumā nav izteiksmes vai pats returnapgalvojums nav funkcijas iekšpusē, funkcija atgriezīs Noneobjektu.

Piemēram:

 >>> print(greet("May")) Hello, May. Good morning! None

Šeit Noneir atgrieztā vērtība, jo greet()nosaukums tiek tieši izdrukāts un netiek returnizmantots neviens paziņojums.

Atgriešanās piemērs

 def absolute_value(num): """This function returns the absolute value of the entered number""" if num>= 0: return num else: return -num print(absolute_value(2)) print(absolute_value(-4))

Rezultāts

 2 4

Kā funkcija darbojas Python?

Funkciju darbība Python

Mainīgo lielums un darbības laiks

Mainīgā joma ir programmas daļa, kurā mainīgais tiek atpazīts. Funkcijas iekšienē definētie parametri un mainīgie nav redzami ārpus funkcijas. Tādējādi tiem ir lokāls mērogs.

Mainīgā mūža ilgums ir periods, kurā mainīgais iziet atmiņā. Mainīgo kalpošanas laiks funkcijas iekšpusē ir tik ilgi, kamēr funkcija tiek izpildīta.

Tie tiek iznīcināti, kad mēs atgriezīsimies no funkcijas. Tādējādi funkcija neatceras mainīgā vērtību no iepriekšējiem zvaniem.

Šeit ir piemērs, lai ilustrētu mainīgā darbības jomu funkcijā.

 def my_func(): x = 10 print("Value inside function:",x) x = 20 my_func() print("Value outside function:",x)

Rezultāts

 Value inside function: 10 Value outside function: 20

Here, we can see that the value of x is 20 initially. Even though the function my_func() changed the value of x to 10, it did not affect the value outside the function.

This is because the variable x inside the function is different (local to the function) from the one outside. Although they have the same names, they are two different variables with different scopes.

On the other hand, variables outside of the function are visible from inside. They have a global scope.

We can read these values from inside the function but cannot change (write) them. In order to modify the value of variables outside the function, they must be declared as global variables using the keyword global.

Types of Functions

Basically, we can divide functions into the following two types:

  1. Iebūvētās funkcijas - funkcijas, kas iebūvētas Python.
  2. Lietotāja definētas funkcijas - funkcijas, kuras nosaka paši lietotāji.

Interesanti raksti...