Почему я получаю синтаксическую ошибку при печати строки в Python 3?
>>> print "hello World"
File "<stdin>", line 1
print "hello World"
^
SyntaxError: invalid syntax
Почему я получаю синтаксическую ошибку при печати строки в Python 3?
>>> print "hello World"
File "<stdin>", line 1
print "hello World"
^
SyntaxError: invalid syntax
В Python 3 print
стал функцией. Это означает, что теперь вам нужно включить круглые скобки, как указано ниже:
print("Hello World")
Похоже, вы используете Python 3.0, в котором print превратился в вызываемую функцию, а не в оператор.
print('Hello world!')
Поскольку в Python 3 print statement
был заменен на print() function
с аргументами ключевого слова для замены большей части специального синтаксиса старого оператора печати. Итак, вы должны написать это как
print("Hello World")
Но если вы напишете это в программе, и кто-то, использующий Python 2.x, попытается ее запустить, он получит ошибку. Чтобы этого избежать, рекомендуется импортировать функцию печати:
from __future__ import print_function
Теперь ваш код работает как на 2.x, так и на 3.x.
Ознакомьтесь с примерами ниже, чтобы познакомиться с функцией print ().
Old: print "The answer is", 2*2
New: print("The answer is", 2*2)
Old: print x, # Trailing comma suppresses newline
New: print(x, end=" ") # Appends a space instead of a newline
Old: print # Prints a newline
New: print() # You must call the function!
Old: print >>sys.stderr, "fatal error"
New: print("fatal error", file=sys.stderr)
Old: print (x, y) # prints repr((x, y))
New: print((x, y)) # Not the same as print(x, y)!
Источник: Что нового в Python 3.0?
from __future__ import print_function
- person Yauhen Yakimovich   schedule 12.08.2013