Python/VSCode: Rekursive Funktion überspringt elif und führt else aus (funktioniert am nächsten Tag)Python

Python-Programme
Anonymous
 Python/VSCode: Rekursive Funktion überspringt elif und führt else aus (funktioniert am nächsten Tag)

Post by Anonymous »

Ich habe ein Problem mit einer rekursiven Python-Funktion in VSCode + Python 3.13.1 festgestellt:
  • Die Funktion hat eine 

    Code: Select all

    if-elif-else
     Struktur mit Selbstrekursion. Nachdem ich Fehler behoben hatte, bestand ich eine 

    Code: Select all

    input_val
     das entspricht eindeutig dem 

    Code: Select all

    elif
     Bedingung (z. B. 

    Code: Select all

    10
     befriedigt 

    Code: Select all

    5 < x < 15
    ), aber der Code wurde ständig übersprungen 

    Code: Select all

    elif
     und ausgeführt 

    Code: Select all

    else
    .
  • Ich habe versucht, die Datei erneut zu speichern, VSCode neu zu starten, den Cache zu leeren usw. – kein Erfolg. Seltsamerweise funktionierte die Ausführung des exakt gleichen Codes am nächsten Tag wie erwartet.
Codebeispiel:

Code: Select all

def my_function(input_val):
if isinstance(input_val, str) and len(input_val) == 1:
return input_val.upper()
elif isinstance(input_val, int) and 5 < input_val < 15:  # 10 should trigger this
return my_function(input_val * 2)  # Recursive call
else:
return my_function(input_val - 3)  # Recursive call
Könnte diese rekursive Anomalie „schlägt an einem Tag fehl, funktioniert am nächsten“ auf VSCode-Caching, Probleme mit dem Python-Interpreter-Stack oder etwas anderes zurückzuführen? Auf der Suche nach Ideen zur Fehlerbehebung.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post