2015-02-02 6 views
0

Я пытаюсь вывести файл, который был прочитан и изменен.Python Использование файла = заданная переменная

new_file = open("MC_QS_MODIFIED.inp","w") 
... 
... 
print(final_data , file=new_file) 
new_file.close() 

и питона принимает исключение к = в print(final_data, file=new_file)

Он работал дома, но теперь, когда я пытаюсь запустить скрипт на работе, Python 2.7.6 дает мне ошибку синтаксиса. Я до сих пор довольно новичок в этом, поэтому я не знаю, не нравится ли моему коду 3.0+ и 2.7.6, или что.

ответ

2

В Python 2, print() не является функцией, но a statement, если вы не сообщите Python, что вы хотите использовать синтаксис Python 3.

Put это в верхней части файла:

from __future__ import print_function 

в отключитьprint заявление в компилятор, так что вы можете использовать print() function вместо этого.

Вы можете столкнуться с другими проблемами, если вы разработали на Python 3 и попытаетесь запустить на Python 2.

+0

Вы правы. Я добавил «из __future__ import print_function», и это огорчает, что объект «списка» не имеет атрибута «clear». Я увижу, не могу ли я установить 3.0+ на компьютер здесь, а не проходить через эту строку за строкой , Большое спасибо Martijn –

+0

@CharlesButler: 'list.clear' не существует в Python 3; не знаете, где вы получили список, в котором Python 3 вернет словарь или вместо него. :-) –