简单代码:
>>> a = print('foo')
File "<stdin>", line 1
a = print('foo')
^
SyntaxError: invalid syntax
为什么呢? print
不应该返回None
吗? print
有什么特别之处?
Nota:没有太多意义,只是试图理解为什么这个特定的功能会像这样反应。
答案 0 :(得分:8)
在Python 2中,print
是一个声明。它不是一个功能,也没有“结果”。但是,您可以通过from __future__ import print_function
使其成为一个函数,然后您的示例将起作用。 (在Python 3中,它始终是一个函数。)