În acest articol, veți afla despre funcții, ce este o funcție, sintaxa, componentele și tipurile de funcții. De asemenea, veți învăța să creați o funcție în Python.
Video: Introducere în funcțiile Python
Ce este o funcție în Python?
În Python, o funcție este un grup de instrucțiuni conexe care efectuează o sarcină specifică.
Funcțiile ne ajută să împărțim programul în bucăți mai mici și modulare. Pe măsură ce programul nostru crește din ce în ce mai mult, funcțiile îl fac mai organizat și mai ușor de gestionat.
În plus, evită repetarea și face codul reutilizabil.
Sintaxa funcției
def nume_funcție (parametri): "" "docstring" "" declarație (e)
Mai sus este prezentată o definiție a funcției care constă din următoarele componente.
- Cuvânt cheie
def
care marchează începutul antetului funcției. - Un nume de funcție pentru a identifica în mod unic funcția. Denumirea funcției urmează aceleași reguli de scriere a identificatorilor în Python.
- Parametri (argumente) prin care trecem valori către o funcție. Sunt opționale.
- Un punct (:) pentru a marca sfârșitul antetului funcției.
- Șir de documentare opțional (docstring) pentru a descrie ce face funcția.
- Una sau mai multe instrucțiuni python valide care alcătuiesc corpul funcției. Declarațiile trebuie să aibă același nivel de indentare (de obicei, 4 spații).
- O
return
instrucțiune opțională pentru a returna o valoare din funcție.
Exemplu de funcție
def greet(name): """ This function greets to the person passed in as a parameter """ print("Hello, " + name + ". Good morning!")
Cum se apelează o funcție în python?
Odată ce am definit o funcție, o putem apela dintr-o altă funcție, program sau chiar din promptul Python. Pentru a apela o funcție, tastăm pur și simplu numele funcției cu parametrii corespunzători.
>>> greet('Paul') Hello, Paul. Good morning!
Notă: Încercați să rulați codul de mai sus în programul Python cu definiția funcției pentru a vedea ieșirea.
def greet(name): """ This function greets to the person passed in as a parameter """ print("Hello, " + name + ". Good morning!") greet('Paul')
Docstrings
Primul șir după antetul funcției se numește docstring și este scurt pentru șirul de documentare. Este folosit pe scurt pentru a explica ce face o funcție.
Deși opțională, documentarea este o bună practică de programare. Dacă nu vă amintiți ce ați luat la cină săptămâna trecută, documentați-vă întotdeauna codul.
În exemplul de mai sus, avem un șir de documente imediat sub antetul funcției. În general, folosim ghilimele triple, astfel încât șirul de documente să se extindă până la mai multe linii. Acest șir ne este disponibil ca __doc__
atribut al funcției.
De exemplu :
Încercați să rulați următoarele în shell-ul Python pentru a vedea rezultatul.
>>> print(greet.__doc__) This function greets to the person passed in as a parameter
Pentru a afla mai multe despre șirurile de documente din Python, accesați Python Docstrings.
Declarația de returnare
Instrucțiunea return
este utilizată pentru a ieși dintr-o funcție și a reveni la locul de unde a fost apelată.
Sintaxa returnării
returnare (expresie_listă)
Această declarație poate conține o expresie care este evaluată și valoarea este returnată. Dacă nu există nicio expresie în declarație sau return
declarația în sine nu este prezentă în interiorul unei funcții, atunci funcția va returna None
obiectul.
De exemplu:
>>> print(greet("May")) Hello, May. Good morning! None
Aici None
este valoarea returnată, deoarece greet()
tipărește direct numele și nu return
se folosește nicio instrucțiune.
Exemplu de returnare
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))
Ieșire
2 4
Cum funcționează funcția în Python?
Funcționarea funcțiilor în PythonDomeniul de aplicare și durata de viață a variabilelor
Domeniul de aplicare al unei variabile este porțiunea unui program în care variabila este recunoscută. Parametrii și variabilele definite în interiorul unei funcții nu sunt vizibile din afara funcției. Prin urmare, au un domeniu de aplicare local.
Durata de viață a unei variabile este perioada în care variabila iese în memorie. Durata de viață a variabilelor din interiorul unei funcții este atâta timp cât funcția se execută.
Ele sunt distruse odată ce ne întoarcem din funcție. Prin urmare, o funcție nu își amintește valoarea unei variabile din apelurile sale anterioare.
Iată un exemplu pentru a ilustra scopul unei variabile din interiorul unei funcții.
def my_func(): x = 10 print("Value inside function:",x) x = 20 my_func() print("Value outside function:",x)
Ieșire
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:
- Funcții încorporate - Funcții care sunt încorporate în Python.
- Funcții definite de utilizator - Funcții definite de utilizatori înșiși.