Hallo,
ich habe ein Problem mit Pycharm.
Vor verschiedenen Zeilen habe ich einen roten Punkt gesetzt. Wenn ich den Debugger starte hält er am ersten roten Punkt. Wenn ich dann den Pfeil anklicke, springt er zum nächsten roten Punkt - wie es sein soll. Wenn ich den Pfeil wieder anklicke, tut sich nichts mehr - er springt nicht zum nächsten roten Punkt.
Was muss ich ändern, damit der Debugger zu jedem roten Punkt springt?
roter Punkt in Pycharm
Das kann man so nicht gut beurteilen, aber nur weil ein Breakpoint gesetzt wurde (so heissen die roten Punkte), heisst das ja noch lange nicht, dass der auch erreicht wird.
Siehe zB folgendes Programm:
Du muesstest also schon den Code zeigen, und die Breakpoints, die du gesetzt hast.
Und du musst natuerlich die Breakpoints behalten. Wobei ich nicht wirklich glaube, dass dies das Problem ist.
Siehe zB folgendes Programm:
Code: Alles auswählen
def test():
print("test") # hier ein Breakpoint gesetzt - der wird nie erreicht
print("hallo")
Und du musst natuerlich die Breakpoints behalten. Wobei ich nicht wirklich glaube, dass dies das Problem ist.
- Bill987654321
- User
- Beiträge: 136
- Registriert: Sonntag 8. März 2020, 10:56
Ich habe folgenden Code geschrieben:
In den Zeilen 11, 26 und 28 habe ich einen roten Punkt gesetzt. Zeile 11 ist folgende
Ich vermute, dass das was mit dem "Main Thread" zu tun hat. Die Zeile 11 gehört zum "Main Thread". Die Zeile 26 nicht.
Code: Alles auswählen
# ********************************************************
# ********************************************************
# Hier beginnt das Hauptprogramm
# belegte Variablen: a,b,i,j
a = ""
mannschaftsnamen = []
tabelle_lfd_nr = []
tabelle_alphabet = []
tabellenzeile_alphabet = []
tabelle_punkte_mit_rang = []
tabelle_alphabet_formatiert = []
tabellenzeile_alphabet_formatiert = []
tabelle_alphabet_formatiert_2 = []
tabellenzeile_alphabet_formatiert_2 = []
print("Bei diesem Programm musst du für jede Liga einen eigenen \
Ordner anlegen.\n")
print("Wenn du bei diesem Programm eine neue Liga anlegst, musst \
du auch gleich mindestens ein Spielergebnis eingeben.\n")
# ****************************************************************
# Abfrage "neue Tabelle anlegen" ja oder nein
while True:
try:
In den Zeilen 11, 26 und 28 habe ich einen roten Punkt gesetzt. Zeile 11 ist folgende
Code: Alles auswählen
tabelle_lfd_nr = []
- Bill987654321
- User
- Beiträge: 136
- Registriert: Sonntag 8. März 2020, 10:56
Vielen Dank für deine zeitnahe Antwort.
Was muss ich ändern, damit mein Programm bei jedem roten Punkt anhält und weiterläuft, wenn ich den Pfeil anklicke?
Was muss ich ändern, damit mein Programm bei jedem roten Punkt anhält und weiterläuft, wenn ich den Pfeil anklicke?
- Bill987654321
- User
- Beiträge: 136
- Registriert: Sonntag 8. März 2020, 10:56
Mein Code ist ca. 700 Zeilen lang. Das ist zuviel, um ihn hier zu posten.
Welche Ursachen könnte es haben, dass der Debugger nicht bei jedem roten Punkt anhält?
Welche Ursachen könnte es haben, dass der Debugger nicht bei jedem roten Punkt anhält?
700 Zeilen sind durchaus verkraftbar. Aber das ist deine Entscheidung. Abstrakte Gruende, warum der Debugger einen Breakpoint nicht ansteuert, gibt es jede Menge. Weil der Mond nicht im dritten Haus steht, weil ein Elf im Hauptspeicher sitzt und den Breakpoint disabled, oder weil der Debugger einen Bug hat. Das man etwas programmiert, und der deswegen nicht anspringt, gehoert NICHT dazu. Sondern da kann es einfach sein, dass deine Verstaendnis vom eigenen Code nicht passt. Wenn du das 100%ig ausschliesst, und weiterhin darauf bestehst, den Code nicht zu zeigen, wie er ist, dann kannst du dich an den Hersteller deiner IDE wenden, und einen Bug melden. Spaetestens da wirst du aber Butter bei die Fische tun muessen, denn die aktzeptieren keine Bugs ohne Code der die reproduziert.
- Bill987654321
- User
- Beiträge: 136
- Registriert: Sonntag 8. März 2020, 10:56
O.k.
Weiß noch nicht, was ich mache.
Weiß noch nicht, was ich mache.
Meine erste Vermutung wäre immer, dass der entsprechende Code nicht erreicht wird. Überprüfe auf jeden Fall ob du in irgendwelchen Schleifen festhängst (infinity loop oder einfach sehr lange). Wenn zwischen den beiden Haltepunkten nicht zu viele Befehle liegen geh sie alle schritt für schritt durch und kontrolliere, wo du hängen bleibst. Oder überspringt er den Haltepunkt nur?