141 votes

Un moyen plus simple de mettre des points d'arrêt PDB dans du code Python ?

Juste une question de commodité. J'ai été un peu gâté avec les débogueurs dans les IDE comme Visual Studio et XCode. Je trouve un peu maladroit de devoir taper import pdb; pdb.set_trace() pour définir un point d'arrêt (je préfère ne pas importer pdb en haut du fichier car je pourrais l'oublier et le laisser).

Existe-t-il un moyen plus simple de définir un point d'arrêt dans le code Python, aussi simple et discret que ce que vous voyez dans un IDE ?

145voto

MatToufoutu Points 5879

Vous pouvez exécuter votre programme dans pdb partir de la ligne de commande en exécutant

python -m pdb votre_script.py

Il cassera sur la 1ère ligne, vous pourrez ensuite ajouter un point d'arrêt où vous le souhaitez dans votre code en utilisant la commande break , sa syntaxe est :

b(reak) [[nom de fichier:]lineno | fonction[, condition]]

Il est suffisamment flexible pour vous donner la possibilité d'ajouter un point d'arrêt n'importe où.

68voto

Apogentus Points 170

Vous pouvez utiliser:

 from pdb import set_trace as bp

code
code
bp()
code
code

47voto

Bill Points 23

Je ne l'ai pas encore essayé, mais ils viennent d'implémenter un nouveau point d'arrêt intégré appelé breakpoint() dans Python 3.7, ce qui signifie que vous pouvez insérer un point d'arrêt avec une seule instruction maintenant :

 breakpoint()

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X