Ich nehme eine Open-Source-Klasse. Ich erhält Doctests und eine CLI, um meinen Code zu testen und zu prüfen, ob er vergeht. Wie kann ich jedoch meinen Code visualisieren, um zu sehen, was passiert? Zum Beispiel fällt es mir schwer zu verstehen, wie die für Loop funktioniert, und ich würde gerne sehen, welche Liste in jeder Rekursion zugewiesen wird. Wenn ich den Debug -Modus im VS -Code ausführe und einen Haltepunkt in der Funktion festlegt, tritt er nie in die Funktion ein. Ich stelle mir vor, dies liegt daran, dass ich in der Datei NIEMALS NUT_FINDER () nenne, aber
ich möchte nicht anfangen, den Quellcode hinzuzufügen, da dies den Zweck der Doctest besiegen würde. Ich kann Python auch interaktiv ausführen, aber auch das wird mir nicht zeigen, wie der Code ausführt. Dies wird auch zu einem Problem aus großen Anwendungen und Multi-File-Anwendungen. Kurz gesagt, wie kann ich den richtigen Weg lernen, meinen Code zu debuggen? < /P>
Code: Select all
# lab05.py
def nut_finder(t):
"""Returns True if t contains a node with the value 'nut' and
False otherwise.
>>> scrat = tree('nut')
>>> nut_finder(scrat)
True
>>> sproul = tree('roots', [tree('branch1', [tree('leaf'), tree('nut')]), tree('branch2')])
>>> nut_finder(sproul)
True
>>> numbers = tree(1, [tree(2), tree(3, [tree(4), tree(5)]), tree(6, [tree(7)])])
>>> nut_finder(numbers)
False
>>> t = tree(1, [tree('nut',[tree('not nut')])])
>>> nut_finder(t)
True
"""
if label(t) == 'nut':
return True
for b in branches(t):
if nut_finder(b):
return True
return False