Introducere
Am folosit frecvent
funcțiile până acum, iar ele sunt de fapt niște
subrutine, adică
subprograme care ne ajută la prelucrarea informației.
De exemplu, funcția
len primește ca parametru un obiect și întoarce lungimea acestuia, fie că e șir de caractere, listă, tuplu, dicționar sau set:
Definiţia 1. Prin
subprogram vom înţelege
un ansamblu alcătuit din declarări şi instrucţiuni scrise în vederea unei anumite prelucrări,
ansamblu implementat separat şi identificat printr-un nume.
Putem enumera unele dintre avantajele utilizării subprogramelor:
•
reutilizarea codului - odată scris, un subprogram poate fi utilizat de către mai multe programe;
•
elaborarea algoritmilor prin descompunerea problemei în altele mai simple - în acest fel, rezolvăm cu mult mai uşor problema;
•
reducerea numărului de erori care pot apărea la scrierea programelor;
•
depistarea cu uşurinţă a erorilor - verificăm la început subprogramele, apoi modul în care le-am asamblat (le-am apelat din cadrul programului);
• realizarea unor
programe uşor de urmărit (lizibile).
Funcțiile pot fi grupate în
module, adică în niște fișiere separate cu extensia
*.py, pe care le putem include în program folosind directiva
import
(veți vedea mai târziu cum).
Crearea unei funcții
Pentru început, vom crea o funcție în cadrul unui program. Să pornim așadar de la un caz simplu.
Exemplu. Se citeşte
n, un număr natural. Să se scrie programul care tipărește valoarea calculată a expresiei:
Analizați programul următor, care folosește de această dată o funcție numită
subp (de la subprogram), creată de noi:
Editor - lectia17_functii.py
|
|
DETALII
Antetul funcției este "
def subp(x):", iar corpul ei, instrucțiunea compusă subordonată (setul de instrucțiuni indentate):
Funcția (subprogramul) se numește "
subp".
Funcţia are un parametru numit
x. Rolul său este important deoarece precizează pentru ce valoare trebuie calculată expresia.
Aşa cum vom vedea, există posibilitatea să avem mai mulţi parametri.
Funcţia are variabile proprii - adică definite/declarate în interiorul ei. În exemplu,
s şi
i. Aceste variabile se numesc
variabile locale.
Am văzut că funcţia întoarce un anumit rezultat! Observaţi mecanismul prin care am obţinut acest lucru.
Calculăm expresia în mod obişnuit. Rezultatul este reţinut de variabila locală
s. Prin instrucţiunea "
return s",
funcţia a primit ca valoare de retur conţinutul variabilei
s.
Parametri formali vs. parametri efectivi
În terminologia utilizată în teoria subprogramelor - în particular, în cazul funcţiilor - se utilizează termenii
parametri formali şi
parametri efectivi.
Definiţia 2. Parametrii care se găsesc în antetul funcţiei se numesc
parametri formali.
Atunci când scriem o funcţie nu cunoaştem valoarea propriu-zisă a parametrilor.
Funcţia trebuie să întoarcă rezultatul corect, oricare ar fi valoarea lor. Din acest punct de vedere ei se numesc
formali.
Definiţia 3. Parametrii care se utilizează la apel se numesc parametri
efectivi (
argumente).
La apel, lucrurile stau altfel: valorile acestora sunt cunoscute. Prin urmare, aceştia se numesc
parametri efectivi.
De exemplu, pentru apelul "
rez = subp(n)", parametrul efectiv este
n.
Avansează la pagina următoare.
Cărțile editurii noastre
O parte dintre manualele și culegerile de probleme se găsește și [
în format electronic]
securizat sub formă
de fișier *.pdf.
"
O cameră fără cărţi este ca un corp fără suflet."
(G. K. Chesterton)
Cursanții au mai cumpărat ...
[
vezi lista completă a cărților]