2009-07-03 14 views
126

Próbowałem uruchomiony skrypt Pythona:Hello World w Pythonie

print "Hello, World!" 

i dostaję ten błąd:

File "hello.py", line 1 
    print "Hello, World!" 
         ^
SyntaxError: invalid syntax 

Co się dzieje?

+113

Podejrzewam, że będzie to najczęściej zadawane pytanie w języku Python przez najbliższe kilka lat. –

+4

Proszę pisać wyniki 'python --version' –

+8

Pomyślnie: Python 3.0 powinien być domyślnie wyposażony w" Ostrzeżenia Py3k ". Zastanów się, jak wiele tysięcy pytań SO/grup dyskusyjnych można zapobiec, wykonując to. – RexE

Odpowiedz

176
print("Hello, World!") 

Prawdopodobnie używasz Pythona 3.0, gdzie print jest now a function (stąd nawiasach) zamiast komunikatu.

+1

Dziękuję, to zadziałało. Nie wiem, dlaczego nie jest to bardziej powszechna wiedza, ponieważ po prostu skopiowałem-wkleiłem z pierwszego wyniku Google dla Python Hello World. – MiffTheFox

+1

"wymaga nawiasów" nie jest właściwym wyjaśnieniem zmiany od 2.x do 3 :) –

+15

@MiffTheFox: Python 2.x używa print jako instrukcji. Stosunkowo nowy Python 3 wykonał zamiast tego funkcję drukowania. Większość programistów w Pythonie nadal korzysta z wersji 2.x ze względu na obszerną obsługę bibliotek i frameworków, więc wersja 3.0 nie jest już tak przyjęta, jak można by się spodziewać. –

109

Niestety, xkcd comic nie jest już całkowicie aktualny.

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

Od Pythona 3.0 trzeba napisać:

print("Hello world!") 

I ktoś jeszcze napisać, że antigravity bibliotekę :(

+39

http://svn.python.org/view/python/trunk/Lib/antigravity.py?view = markup & pathrev = 66902 – Blixt

+3

Whoa ... Twoje odniesienie do xkcd zawiera nawet hvertext. Czy to robi xkcd czy twoje? – inetknght

+3

@inetknght: Jeśli spojrzysz na znaczniki za postem, zobaczysz, jak hvertowanie jest wykonywane. – Christian

14

w Pythonie 3.x. użyć

print("Hello, World") 

W języku Python 2.x. używasz

print "Hello, World!" 
+9

Korzystanie z 3.x wymaga mniej entuzjazmu? – LShaver