У меня есть этот кусок скрипта, который работает в python 2.7, но не работает на 3.6.
with open("points.txt") as myfile:
print '{0:10} {1:5}'.format("Exercices","Points")
for line in myfile:
entry = line.strip().split(",")
sum = sum + int(entry[1])
print "{0:^10} {1:^5}".format(entry[0], entry[1])
print "{0:^10} {1:^5}".format("Results",sum)
Я получаю
File "points.py", line 18
print '{0:10} {1:5}'.format("Exercices","Points")
^
SyntaxError: invalid syntax
Это потому, что мне нужно вместо этого использовать строку f?
Спасибо.
Обновить решение
Я пропустил скобку ..
Правильный:
with open("points.txt") as myfile:
print ('{0:10} {1:5}'.format("Exercices","Points"))
for line in myfile:
entry = line.strip().split(",")
sum = sum + int(entry[1])
print("{0:^10} {1:^5}".format(entry[0], entry[1]))
print("{0:^10} {1:^5}".format("Results",sum))
Проблема связана с вашим оператором печати, в Python 3 операторы печати выполняются следующим образом: print("Hello World") с круглыми скобками
@PatrickArtner, да, это правильно! это была скобка !!


print ('{0:10} {1:5}'.format("Exercices","Points"))python 3.6 print - это функция - ей нужен()