Python旧打印声明

时间:2013-09-24 11:59:34

标签: python

我刚用Python 3在'print'上得到了Syntax错误,通过搜索我发现在较新的python版本中,print语句被替换为print function(http://docs.python.org/3.0/whatsnew/3.0.html#print-is-a-function)。

那么在python 3之前'print'是什么?它是如何实现的?是否有可能创建像'print'这样的函数的语句?

2 个答案:

答案 0 :(得分:3)

正如你所说,这是一个声明。语句在解释器级别处理,因为每个语句在解析树中都有自己的规则;因此,您不可能将自己的语句添加到语言中(无需修补解释器和编译器代码),但Python并非设计为 可扩展。

还有一些规定可以制作这种黑客,你可以看看from future import ...的工作方式:

http://docs.python.org/2/reference/simple_stmts.html#future

答案 1 :(得分:1)

如果要将python 2代码转换为python 3,可以使用2to3脚本。 见http://docs.python.org/2/library/2to3.html

相关问题