Warum verursacht `print(value, end='')` einen SyntaxError in Python 3.x?

Mary-Kate Olsen
Freigeben: 2024-11-09 14:45:02
Original
943 Leute haben es durchsucht

Why Does `print(value, end=' ')` Cause a SyntaxError in Python 3.x?

Fehlerbehebung bei SyntaxError für Print mit dem Schlüsselwortargument end='

In Python 3.x wird beim Aufruf von print die Syntax end=' ' verwendet () kann einen SyntaxError auslösen. Dies tritt häufig beim Upgrade von Code von Python 2.x auf, bei dem print immer noch als Anweisung und nicht als Funktion behandelt wird.

Erklärung

In Python 2.x , print ist syntaktisch eine Anweisung und akzeptiert daher keine Schlüsselwortargumente. Infolgedessen ist print("foo" % bar, end=" ") eine ungültige Syntax und löst einen SyntaxError aus.

In Python 3.x wird print jedoch zu einer Funktion aktualisiert, sodass dies möglich ist Nehmen Sie Schlüsselwortargumente einschließlich Ende an. Das bedeutet, dass print("foo" % bar, end=" ") jetzt die gültige und erwartete Syntax in Python 3.x ist.

Auflösung

Wenn Sie Wenn Sie in Python 3.x auf den SyntaxError stoßen, stellen Sie sicher, dass Sie die richtige Syntax verwenden: print(value, end=" ").

Zur Code-Portabilität sollten Sie die Verwendung der folgenden Redewendungen in Python 2.x in Betracht ziehen :

print("foo" % bar, )  # Add a trailing comma to prevent a line break
sys.stdout.write("foo" % bar + " ")  # Use sys.stdout for direct output manipulation
Nach dem Login kopieren

Alternativ können Sie, wenn möglich, den zukünftigen Import der print_function in Python 2.x aktivieren, um die Python 3.x-Drucksyntax zu verwenden:

from __future__ import print_function
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum verursacht `print(value, end='')` einen SyntaxError in Python 3.x?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage