Funcţiile PYTHON

Funcţiile PYTHON se construiesc folosind cuvântul cheie def, urmat de un nume de funcţie şi de o listă de parametrii. Corpul funcţiei conţine instrucţiuni de definire de noi operanzi, de prelucrare şi una sau mai multe instrucţiuni return. Instrucţiunea return are un şir de elemente.
Definirea funcţiei este:
def nume_functie(param_1, param_2, param_3,..., param_n):
linie_1 text sursă
linie_1 text sursă
linie_1 text sursă
......
linie_1 text sursă
return elem_1, elem_2, elem_3, ..., elem_m

Atât lista de parametrii de la definire, cât şi lista de entităţi de la return includ situaţia absenţei elementelor, astfel că este posibilă şi funcţia fără parametrii şi cu return fără un element. Funcţia:
def tiparire()
print(mesaj_1)
print(mesaj_2)
print(mesaj_3)
print(mesaj_4)
return
tipăreşte la fiecare apel cele patru mesaje, aşa cum face programul:
Programul PYTHON este:

#
# Functie fără argumente, care nu returneză nimic
#
def scrie():
        print("Mesaj_1")
        print("Mesaj_2")
        print("Mesaj_3")
        return
print("Efectul functiei fara parametri")
print("primul grup de mesaje este:")
scrie()
print("Al II-lea grup de mesaje este:")
scrie()
print("Al III-lea grup de mesaje este:")
scrie()

Rezultatul afişat este:

Efectul functiei fara parametri
primul grup de mesaje este:
Mesaj_1
Mesaj_2
Mesaj_3
Al II-lea grup de mesaje este:
Mesaj_1
Mesaj_2
Mesaj_3
Al III-lea grup de mesaje este:
Mesaj_1
Mesaj_2
Mesaj_3





Funcţia de numărare a elementelor:
- pozitive,
- negative,
- nule,
din listă sau set sau dicţionar, returnează trei valori, aşa cum se vede în programul:




Programul PYTHON este:

#
# program numarare elemente pozitive, negativen nule
#
X_lista = [1, -2, 3, 4, 0, 5, -6, 7, 8, -9, 0, 10, 0, -5, 15, 0, 20]
# Nr_elem = len(X_lista)
def contorizare(X):
        nr_nule = nr_negativ = nr_pozitiv = 0
        for i in X:
           if i == 0:
              nr_nule += 1
           if i < 0:
              nr_negativ +=1
           if i > 0:
              nr_pozitiv += 1
        return nr_nule, nr_negativ, nr_pozitiv
NR_NULL, NR_POZ, NR_NEG = contorizare(X_lista)
Suma = NR_NULL + NR_POZ + NR_NEG
LEN = len(X_lista)
print("Numar elemente in lista :", LEN)
print("Elemente numarate in total:", Suma)
print("Numarul elementelor pozitive este:", NR_POZ)
print("Numarul elementelor negative este:", NR_NEG)
print("Numarul elementelor nule este:", NR_NULL)


Rezultatul afişat este:
Numar elemente in lista : 17
Elemente numarate in total: 17
Numarul elementelor pozitive este: 4
Numarul elementelor negative este: 9
Numarul elementelor nule este: 4




Pentru a se vedea nivelul de flexibilitate de utilizare a tipurilor de date, funcţia SUMA(x) realizează însumarea elementelor diferitelor tipuri de date, liste, seturi, dicţionare, aşa cum se vede în programul:
Programul PYTHON este:

#
# Functie care insumează elemente
#
x_LIST = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
x_SET = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
x_DICTIONAR = {1:1, 2:2, 3:3, 4:4, 5:5, 6:6, 7:7, 8:8, 9:9, 10:10}
def SUMA_toate(x):
        suma_ELEM = 0
        ne_ELEM = len(x)
        for i in x:
           suma_ELEM += i
        return suma_ELEM
suma_LIST = SUMA_toate(x_LIST)
print("Suma elementelor listei este:", suma_LIST)
suma_SET = SUMA_toate(x_SET)
print("Suma elementelor setului este:", suma_SET)
Dictionar_VAL = x_DICTIONAR.values()
suma_DICTIONARY = SUMA_toate(Dictionar_VAL)
print("Suma elementelor din dictionar este:", suma_DICTIONARY)


Rezultatul afişat este:

Suma elementelor listei este: 55
Suma elementelor setului este: 55
Suma elementelor din dictionar este: 55


Nu am folosit comentarii aici, pentru că am dat nume sugestive entităţilor cu care am lucrat. Programele cu identificatori neintuitivi necesită obligatoriu comentarii.

revenire