Try-except-finally. Lambda
Finally this ends! Except this one last portion, and the ✨exercises✨
Try- except
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
Structiră:
#lambda <variabilele folosite în expresie> : <expresie>
Utilizarea
hello = lambda * x : print("Hello,", x[1]) #funcție
hello('Mia', 'Lia') # apelarea fucției
(lambda x : x + 1)(1) #functia și apelarea funcției in o linie
hello = lambda * x : print("Hello,", x[1])
hello('Mia', 'Lia') #Output Lia
De ce am utiliza funcția Lambda?
Funcția Lambda este folositoare atunci când vrem să definim o funcție intr-o singura linie de cod.
fruits = [('banane', 3), ('portocale', 2), ('mere', 5), ('pere', 7), ('gutui', 4)]
print(sorted(fruits))
# Sortarea dupa al doilea element
print(sorted(fruits, key = lambda x: x[1]))
Mai multe informații: Try-except( site, documentation) Lambda
When in doubt go to the library
Last updated