webentwicklung-frage-antwort-db.com.de

Führen Sie den Python-Debugger (pdb) in Sublime Text 3 aus

Wie können Sie Python-Debugger-Haltepunkte ( pdb ) in Sublime Text 3 festlegen?

Beide SublimeREPL oder Python-Haltepunkte schlagen mit dem Standard-Python-Buildsystem fehl:

print "hello"
# code runs fine without this breakpoint
import pdb; pdb.set_trace()
print "bye"

>>>File "C:\Python27\lib\bdb.py", line 49, in trace_dispatch
>>>return self.dispatch_line(frame)
    >>>File "C:\Python27\lib\bdb.py", line 68, in dispatch_line
    >>>if self.quitting: raise BdbQuit

Das obige Problem erscheint dokumentiert , jedoch ohne offensichtliche Korrektur. Oder hat mich die Antwort angestarrt?

23
ecoe

python-Breakpoint-Plugin und überprüfen Sie diesen Link Python-Breakpoint-Debugger

Verwende Strg + Umschalt + B, um den Haltepunkt in einer Zeile umzuschalten

Aber es ist keine vorzuziehende Lösung für das Debuggen einer Software mit einem Texteditor. Es gibt die besten IDE, die Ihre Entwicklung erheblich erleichtern

  • visual Studio Community Edition

  • Pycharm

  • Finsternis

  • Komodo

5
Rajaraman

Sie könnten versuchen, eine IDE zu verwenden, die für Python spezifisch ist. Dies macht das Debuggen und Einrichten von Python-Projekten sehr einfach. Ich würde empfehlen, dass Sie die kostenlose Community-Version von Pycharm ausprobieren.

https://www.jetbrains.com/pycharm/download/

0
Johnny Gasyna

Wenn Sie sich nicht mit zusätzlichen Paketen befassen möchten, können Sie ein Snippet erstellen, um den Haltepunkt für Sie festzulegen.

<snippet>
    <content><![CDATA[import pdb;pdb.set_trace()]]></content>
    <tabTrigger>pdb</tabTrigger>
    <scope>source.python</scope>
    <description>Insert a breakpoint</description>
</snippet>

Das obige Snippet wird immer dann ausgelöst, wenn Sie pdb in Ihren Code eingeben . autocomplete window when the snippet is triggered

Anweisungen auf einem Mac

  • Navigieren Sie zu Tools -> Developer -> New Snippet
  • Ersetzen Sie die Vorlage durch das obige Snippet
  • Speichern Sie das Snippet unter ~/Library/Application Support/Sublime Text 3/Packages/User
  • Stellen Sie sicher, dass der Name mit sublime-snippet endet (z. B. breakpoint.sublime-snippet)

Es sollte sofort nach dem Speichern funktionieren.

0
chirinosky