erro de sintaxe na impressão com Python 3 [duplicado]
-
05-07-2019 - |
Pergunta
Esta questão já tem uma resposta aqui:
Por que recebo um erro de sintaxe ao imprimir uma string em Python 3?
>>> print "hello World"
File "<stdin>", line 1
print "hello World"
^
SyntaxError: invalid syntax
Solução
Em Python 3, print
tornou-se uma função . Isso significa que você precisa para incluir parênteses agora, como mencionado abaixo:
print("Hello World")
Outras dicas
Parece que você está usando Python 3.0, em que impressão se transformou em uma função que pode ser chamado em vez de um comunicado.
print('Hello world!')
Porque em Python 3, print statement
foi substituído com um print() function
, com argumentos de palavra-chave para substituir a maior parte da sintaxe especial da declaração de impressão antigo. Então você tem que escrevê-lo como
print("Hello World")
Mas se você escrever isso em um programa e alguém usando Python 2.x tenta correr, eles vão receber um erro. Para evitar isso, é uma boa prática para a função de importação de impressão
from __future__ import print_function
Agora você código funciona em ambos 2.x & 3.x
Confira abaixo exemplos também para se familiarizar com print () função.
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)!
Fonte: Novidades no Python 3.0
?