Declarațiile Try, Except, Finally ne permit să manevrăm erorile din programul nostru fără dificultăți.
Structură:
try:
#Codul care conține erori
except:
#Codul care va rula în cazul în care codul precedent conține erori
else:
#Codul care va rula în cazul în care nu există erori
finally:
#Codul care întodeauna se execută indiferent dacă a apărut sau nu eroare
Exemplu
# Exemplu cand avem erori
numbers = [3, 5, 7, 10, '3', 5, '5', '9']
new_numbers = []
for n in numbers:
n = n + 10
new_numbers.append(n)
Cum soluționăm
numbers = [3, 5, 7, 10, '3', 5, '5', '9']
new_numbers = []
for n in numbers:
print('---------')
try:
n = n + 10
new_numbers.append(n)
print("Poate ma execut da poate nu vreau")
except TypeError:
# prindem eroarea TypeError, care o vedem aruncata in celula de mai sus
print('ERRRRRROAOAAAAAARE')
# n = str(n) + 10
# new_numbers.append(n)
else:
print("Codul s-a executat fără erori")
finally:
print("Eu poate si nu vreau dar nimeni nu ma intreaba, ma execut intotdeauna")
Lambda
Lambda este o funcție anonimă, ce nu are nume.
Funcția Lambda conține doar o expresie.
Funcția Lambda poate conține multiple variabile.
Structiră:
#lambda <variabilele folosite în expresie> : <expresie>