Comment déboguer avec Jupyter ou iPython Notebook

Cela a été un peu discuté lors d'une session d'étude, alors j'ai cherché.

Préparation

Juste avant la ligne que vous souhaitez déboguer, ajoutez ce qui suit:

from IPython.core.debugger import Pdb; Pdb().set_trace()

Vous pouvez utiliser le Trace de ʻIPython.core.debugger`, mais il est maintenant traité comme DEPRECATED. Référence: IPython issue # 9940

Courir

Lorsqu'elle est exécutée normalement avec Jupyter ou iPython Notebook, l'exécution est interrompue immédiatement après la ligne ajoutée dans la section précédente.

run1.png

Entrez la commande dans le champ de texte qui apparaît après ʻipdb> `. L'aide s'affiche avec «h». Il se termine par «q».

liste de commandes ipdb

Référence: Python Ipdb Cheatsheet

Système mobile

commander La description
n Courir jusqu'à la ligne suivante(next)
c Continuer l'exécution jusqu'au prochain point d'arrêt(continue)
unt numéro de ligne Exécuter jusqu'à ce que la ligne spécifiée soit atteinte(until)
d Intervenir(down)
u Sors(up)
s Exécuter jusqu'à l'appel de fonction suivant(step)
r Exécuter jusqu'à ce que la fonction actuelle retourne(return)
q Courez jusqu'au bout et terminez(quit)

Système d'affichage

commander La description
p nom de variable Afficher la valeur de la variable(print)
a Afficher les arguments de la fonction actuelle(args)
w Afficher la trace de la pile(where)
h Aidez-moi(help)

Système de réglage du point d'arrêt

commander La description
b Numéro de ligne ou nom de fonction Définir des points d'arrêt(break)
numéro de ligne de rupture ou nom de fonction Définir un point d'arrêt temporaire(Supprimé lorsque le point d'arrêt est atteint)
désactiver le numéro Désactiver les points d'arrêt
activer le numéro Activer les points d'arrêt
ignorer le nombre de nombres Ignorer les points d'arrêt un nombre spécifié de fois
numéro de condition Condition à définir Changer la valeur de jugement de la condition au point d'arrêt
cl Supprimer tous les points d'arrêt(clear)

Recommended Posts

Comment déboguer avec Jupyter ou iPython Notebook
Comment utiliser le notebook Jupyter avec ABCI
[IPython] Comment partager un bloc-notes IPython
Comment utiliser IPython Notebook
Jouer avec Jupyter Notebook (IPython Notebook)
Comment utiliser Jupyter Notebook
Comment importer NoteBook en tant que module dans Jupyter (IPython)
Comment importer NoteBook en tant que module dans Jupyter (IPython)
Utilisation d'Apache Spark avec le notebook Jupyter (notebook IPython)
Je veux écrire un blog avec Jupyter Notebook
Comment exécuter des commandes avec Jupyter Notebook
Jupyter Notebook Principes d'utilisation
Comment utiliser le bloc-notes Jupyter [super basique]
Sortie de cellule riche avec Jupyter Notebook (IPython)
Comment faire revivre des cellules dans le notebook iPython
Comment démarrer par lots un programme Python créé avec le notebook Jupyter
Comment utiliser Jupyter Notebook sans polluer votre environnement avec Docker
[Jupyter Notebook / Lab] Trois méthodes de débogage sur Jupyter [Pdb]
Comment toucher Jupyter Notebook sans polluer l'environnement autre que Pythonista, ou comment toucher Ruby avec Jupyter Notebook sans polluer l'environnement autre que Rubyist
Comment déboguer le sélénium
Comment utiliser IPython
Dessin graphique avec jupyter (notebook ipython) + matplotlib + vagrant
Comment traiter l'erreur "Aucun module nommé" "" dans Jupyter Notebook | Installer avec! Pip!
Comment traiter les images de caméra avec Teams et Zoom
Approvisionnement EC2 avec Vagrant + Jupyter (IPython Notebook) sur Docker
Comment lancer instantanément Jupyter Notebook à partir du terminal
Comment (forcer) PDF les diapositives d'un notebook IPython
Comment afficher la barre de progression sur Jupyter Notebook pour voir la progression
Calcul parallèle avec le notebook iPython
Introduction de Jupyter Notebook dans CentOS7
Utilisation de Graphviz avec Jupyter Notebook
Utiliser pip avec Jupyter Notebook
Comment changer la disposition de Jupyter
Comment mettre à jour avec SQLAlchemy?
Utiliser Cython avec Jupyter Notebook
Comment lancer avec Theano
Comment modifier avec SQLAlchemy?
Comment séparer les chaînes avec ','
Exécutez Apache-Spark sur le notebook IPython
Comment faire RDP sur Fedora31
Dessin graphique avec IPython Notebook
Comment supprimer avec SQLAlchemy?
Utilisation de Bokeh avec IPython Notebook
Comment créer rapidement un environnement d'apprentissage automatique à l'aide de Jupyter Notebook avec UbuntuServer 16.04 LTS
Je souhaite utiliser un environnement virtuel avec jupyter notebook!
Comment voir le contenu du fichier ipynb du notebook Jupyter
La façon habituelle d'ajouter un noyau avec Jupyter Notebook
Connectez le noyau Jupyter Notebook à Spyder avec Jupytext activé
Comment gérer le phénomène que Python (notebook Jupyter) exécuté sur WSL devient abandonné
Comment créer rapidement un environnement d'apprentissage automatique à l'aide de Jupyter Notebook avec UbuntuServer 16.04 LTS avec Anaconda
Comment annuler RT avec Tweepy
Autoriser les connexions externes avec le notebook Jupyter
Formatage avec autopep8 sur le notebook Jupyter
Python: comment utiliser async avec
Visualisez l'arbre de décision avec le notebook Jupyter
Faites un son avec le notebook Jupyter
Pour utiliser virtualenv avec PowerShell
Comment installer python-pip avec ubuntu20.04LTS
Comment gérer les données déséquilibrées
Comment démarrer avec Scrapy