Kann jemand verhindern, dass der Debugger externen Code eingibt?
Ja, Dmitry Trofimov knows;
(...) in Module, die Sie wollen nicht auf die dict verfolgen DONT_TRACE
in <pycharm-distr>/helpers/pydev/pydevd.py
dass eine hacky Lösung ist (...)
Wenn Sie diese Funktion wollen weniger hacky Sie es pDB auf es durch den Besuch Ausgabe
PY-9101 Implement "Do not step into the classes" option for Python debugger
Die Verwendung könnte interessieren, stimmen kann, ist eine solche Funktion in pdb;
Beginnend mit Python 3.1, hat Pdb
Klasse ein neues Argument genannt skip
-
class pdb.Pdb(completekey='tab', stdin=None, stdout=None, skip=None, nosigint=False)
Das Sprung-Argument, wenn angegeben, muss ein iterable von glob-style-Modul Namensmuster sein. Der Debugger tritt nicht in Frames ein, die in einem Modul initiieren, das einem dieser Muster entspricht. 1
1, ob ein Rahmen in einem bestimmten Modul stammt, berücksichtigt wird, ist durch die __name__
in dem Rahmen globals bestimmt.
Das Beispiel in der Dokumentation gegeben zeigt, wie Django-Pakete überspringen -
import pdb; pdb.Pdb(skip=['django.*']).set_trace()
einen Haltepunkt in Ihrem Code Setzen und um sie auszuführen. – duffymo
Das Übergehen des Methodenaufrufs zur Bibliothek funktioniert nicht? –
werfen Sie einen Blick hier: http: // Stackoverflow.com/questions/11966276/ignoriere-Ausnahmen-geworfen-und-gefangen-inside-a-Bibliothek –