Heim > Artikel > Backend-Entwicklung > Wie behebt man „TypeError: Not All Arguments Converted While String Formatting' in Python?
TypeError: Nicht alle Argumente, die während der Zeichenfolgenformatierung konvertiert wurden, behoben
Beim Versuch, eine Zeichenfolge mithilfe von Platzhaltern wie {0} mit der %-Formatierung zu formatieren Wenn Sie den Operator verwenden, tritt möglicherweise der Fehler „TypeError: Nicht alle Argumente wurden während der Zeichenfolgenformatierung konvertiert“ auf. Dieser Fehler weist auf eine Inkonsistenz im von Ihnen verwendeten Formatierungsstil hin.
Die Lösung liegt in der Verwendung des richtigen String-Formatierungsoperators. In Ihrem Fall verwenden Sie die %-Formatierung, versuchen aber, Platzhalter durch die .format-Methode zu ersetzen, die nicht kompatibel ist. Um dieses Problem zu beheben, sollten Sie entweder konsequent den %-Formatierungsoperator verwenden oder zur Verwendung der .format-Methode wechseln.
Wenn Sie bei der %-Formatierung bleiben möchten, finden Sie hier ein Beispiel:
<code class="python">print(""'%s' is longer than '%s'" % (name1, name2)) # Correct use of % formatting</code>
Die Verwendung der .format-Methode ist jedoch der bevorzugte Ansatz:
<code class="python">print("'{0}' is longer than '{1}'".format(name1, name2)) # Correct use of .format</code>
Beachten Sie, dass die .format-Methode erfordert, dass die Platzhalter in geschweifte Klammern {} eingeschlossen werden und die Werte als Argumente an die Methode übergeben werden .
Das obige ist der detaillierte Inhalt vonWie behebt man „TypeError: Not All Arguments Converted While String Formatting' in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!