it-swarm.com.de

Was bedeutet "SyntaxError: Fehlende Klammern beim Aufruf von 'print'" in Python?

Wenn ich versuche, eine print -Anweisung in Python zu verwenden, erhalte ich folgenden Fehler:

>>> print "Hello, World!"
  File "<stdin>", line 1
    print "Hello, World!"
                        ^
SyntaxError: Missing parentheses in call to 'print'

Was bedeutet das?

365
ncoghlan

Leider ist der alte xkcd comic nicht mehr ganz aktuell.

https://imgs.xkcd.com/comics/python.png

Seit Python 3.0 müssen Sie schreiben:

print("Hello, World!")

Und jemand muss noch diese antigravity Bibliothek schreiben :(

21
Christian

Die Syntax wurde von Python 2 in Python 3 geändert. In Python 2

print "Hello, World!" 

wird funktionieren, aber in Python 3 verwenden Sie Klammern als

print("Hello, World!")

Dies ist eine äquivalente Syntax zu Scala und in der Nähe von Java.

17
Sagar balai

Wenn Ihr Code sowohl in Python 2 als auch in _ 3 funktionieren soll, können Sie dies erreichen, indem Sie dies am Anfang Ihres Programms laden:

from __future__ import print_function   # If code has to work in Python 2 and 3!

Dann können Sie auf Python 3 Weise drucken:

print("python")

Wenn Sie etwas drucken möchten, ohne eine neue Zeile zu erstellen, können Sie dies tun:

for number in range(0, 10):
    print(number, end=', ')
4
Lukasz

In Python 3 können Sie nur drucken als:

print("STRING")

In Python 2 sind die Klammern jedoch nicht erforderlich.

3
Larry

Außerhalb der direkten Antworten sollte man den anderen Hauptunterschied zwischen python 2 und 3 beachten. Das offizielle python-Wiki bezieht sich auf fast alle wichtigen Themen Unterschiede und konzentriert sich darauf, wann Sie eine der Versionen verwenden sollten. Dieser Blog-Beitrag erklärt auch das aktuelle python-Universum und das irgendwie ungelöste Rätsel, nach python 3 zu wechseln.

Soweit ich das beurteilen kann, lernst du gerade die Sprache python. Sie sollten die oben genannten Artikel berücksichtigen, bevor Sie die Route python 3 fortsetzen. Sie müssen nicht nur einige Syntaxänderungen vornehmen, sondern auch überlegen, welche Pakete für Sie verfügbar sind (ein Vorteil von python 2) und welche Optimierungsmöglichkeiten in Ihrem Code bestehen ( ein Vorteil von python 3).

1
Chad Van De Hey