Python中关键字"print"和函数"print"的实际区别
Python中关键字"print"和函数"print"的实际区别
这个问题已经有答案了:
对于 Python 2.x,如果我们使用:
from __future__ import print_function
print
会变成一个函数,这之前是一个关键字
但实际上,
这两者有什么不同呢?
我仍然可以像在它是一个关键字时一样使用 print
,那么它是怎样比之前更有效率的呢?
admin 更改状态以发布 2023年5月24日
并非完全是这样。使用函数必须要写print(stuff)
,但是使用语句可以写成print stuff
。
主要优势是如果print
是一个函数,你可以为该名称分配一个不同的函数。例如,您可以创建一个新函数,不仅将数据输出到屏幕上,还将其记录到文件中。如果您分配此函数到内置的print
,则使用print
的任何代码都会自动记录到一个文件中。这在print
作为语句情况下是不可能的,您必须使用其他技术来达到同样的效果。
此外,print
的输出格式也有一些较小的变化。语句使用了“神奇”的语法(例如,尾随逗号抑制了接下来的空格),而函数使用标准的关键字参数约定。
此外,在Python 3中,print
将始终是一个函数。在Python 2中,如果您需要print
作为函数,则必须使用__future__
导入。