TypeError: Nicht unterstützte Operandentypen für die Subtraktion
Wenn der Fehler „TypeError: nicht unterstützte Operandentypen für -: 'str'“ auftritt und 'int'" bedeutet dies, dass versucht wurde, zwei inkompatible Operanden zu subtrahieren, normalerweise eine Zeichenfolge und eine Ganzzahl.
In diesem Fall zeigt der bereitgestellte Python-Code diesen Fehler:
<code class="python">def cat_n_times(s, n): while s != 0: print(n) s = s - 1 text = input("What would you like the computer to repeat back to you: ") num = input("How many times: ") cat_n_times(num, text)</code>
Der Fehler entsteht durch den Versuch, die Variable s (der das Ergebnis der Eingabe zugewiesen ist) um 1 zu subtrahieren. Die Eingabe gibt jedoch eine Zeichenfolge zurück und Python kann keine Subtraktion für Zeichenfolgen und ganze Zahlen durchführen.
Um dieses Problem zu beheben Konvertieren Sie num direkt nach Erhalt der Eingabe mit int(num) in eine Ganzzahl:
<code class="python">num = int(input("How many times: "))</code>
Zusätzlich könnte der Code mithilfe einer for-Schleife vereinfacht werden:
<code class="python">def cat_n_times(s, n): for _ in range(n): print(s)</code>
Dieser überarbeitete Code akzeptiert eine Zeichenfolge für Text und eine Ganzzahl für Num, um sicherzustellen, dass die Subtraktionsoperation korrekt ausgeführt wird.
Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „TypeError: Nicht unterstützte Operandentypen für -: \'str\' und \'int\'\' in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!