我一直在使用Python 2.7。 突然间,我收到了print语句的错误,看起来我现在应该使用Python 3.x语法。
print 'hello world'
File "<ipython-input-462-d05d0c8adf1f>", line 1
print 'hello world'
^
SyntaxError: invalid syntax
print('hello world')
hello world
我仔细检查过我仍在运行2.x Python版本:
import sys
print (sys.version)
2.7.12 |Anaconda 2.3.0 (64-bit)| (default, Jun 29 2016, 11:07:13) [MSC v.1500 64 bit (AMD64)]
我最近对Python环境所做的唯一更改是将matplotlib从1.4更新为1.5,但老实说我不能说问题是从更新的确切时刻开始的。
任何帮助将不胜感激(请告诉我我的系统需要哪些其他信息)
答案 0 :(得分:0)
您使用的是print_function
将来的导入吗?
from __future__ import print_function
该函数将新的打印语法向后移植到Python 2代码。如果代码库在Python 2和3上都可以运行,通常会使用它。
示例:
>>> print 'hello'
hello
>>> from __future__ import print_function
>>> print 'hello'
File "<stdin>", line 1
print 'hello'
^
SyntaxError: invalid syntax
>>> print('hello')
hello
有关详细信息,请参阅the __future__ docs。
如果您自己没有使用该导入,则可以测试问题是仅在ipython
还是在常规python
中发生,以缩小问题的根源。 / p>