Aller au contenu

Le Traceback⚓︎

Le Traceback indique le cheminement d'une erreur.

Exemple

🐍 Script Python
def f(n):
    return 0 + g(n)

def g():
    return 1 * h(n)

def h(n):
    return 1 / n

Testons l'appel f(0)

🐍 Console Python
>>> f(0)
Traceback (most recent call last):
    File "<pyshell>", line 1, in <module>
    File "/home/francky/test.py", line 2, in f
        return 0 + g(n)
    File "/home/francky/test.py", line 5, in g
        return 1 * h(n)
    File "/home/francky/test.py", line 8, in h
        return 1 / n
    ZeroDivisionError: division by zero
>>>

L'appel f(0) provoque une erreur, on peut retracer l'historique des appels de fonction avec les fichiers associés, ce ne sont pas forcément les mêmes avec des modules importés. Ici

  1. Dans un terminal, il y a eu un appel à f
  2. Dans le fichier test.py, dans la définition de f, il y a eu un appel à g.
  3. Dans le fichier test.py, dans la définition de g, il y a eu un appel à h.
  4. Dans le fichier test.py, dans la définition de h, il y a eu une division par zéro.