Ошибка форматирования строки с python 2.7 по python 3.2

У меня есть этот кусок кода Python:

args   =(12, 45, 7854) 
2 result = 123
3 answer = 456
4 print 'Test with data: ', args, ' result: ', result, ' answer: ', answer

Теперь, когда я запускаю это с python2.7.3, я получаю это:

Test with data:  (12, 45, 7854)  result:  123  answer:  456

Но когда я использую python3.2.3, я получаю эту ошибку:

print 'Test with data: ', args, ' failed result: ', result, ' answer: ', answer
                       ^
SyntaxError: invalid syntax

Я искал различные способы объединения или форматирования этой строки, но использование + или% s дает ту же ошибку.
Любая помощь, спасибо заранее.

2 ответа

Решение

print это функция в py3x:

print ('Test with data: ', args, ' failed result: ', result, ' answer: ', answer)

В питоне 3+ нужно поставить print( ) потому что печать keyword в 2+ сейчас function в 3+.

Вот документы Python по этому поводу.

Другие вопросы по тегам