% Programmation avec Python (chapitre 10) % Dimitri Merejkowsky
\center \huge Rappels
\center \huge Exceptions
Examples:
les backtraces
def une_fonction():
	return 1 / 0
def une_autre_fonction():
    une_fonction()
une_autre_fonction()
def une_fonction(diviseur):
	return 1 / diviseur
def une_autre_fonction():
    une_fonction(diviseur=0)
une_autre_fonction()
def retirer_somme(compte, montant):
   solde = ...
   if montant >= solde:
           raise ValueError("montant supérieur au solde!")
catchAttention aux bare except
À connaître À utiliser si vous faites une librairie.
Watch Before You Leap Easier to Ask for Forgiveness than Permission
fichiers encore:
if exists():
if pas_un_dossier():
if j_ai_les_droits_en_lecture():
open(filename):
try:
    open(filename):
catch IOError:
    ...
if truc:
    if machin:
        for bidule in chose:
            raise MyError("kaboom!")
if truc:
    if machin:
        try:
            for bidule in chose:
                raise MyError("kaboom!")
        except:
        	...
if truc:
    try:
        if machin:
            for bidule in chose:
                raise MyError("kaboom!")
    except:
	...
asargs