我安装了最新版本的Python。 from __future__ import...
语句是否会产生任何影响?有没有"未来"超出我应该知道的最新版本 - "预发布"或测试版对新手来说不是很明显?
我问,因为我正在通过This introductory tutorial to TensorFlow工作,告诉我执行from __future__ import print_function
。我真的不确定这是做什么的,以及它是否一直在做 - 没有报告错误......但也没有明显效果。
我已经尝试执行from future...
语句作为python会话中的第一件事,或者它在教程中给出的指令序列中。这似乎没有什么区别......除了让一个疯狂的追逐新人!我错过了什么吗?
答案 0 :(得分:1)
Python 3已经具有print
函数,因此当您已经使用Python 3时,from __future__ import print_function
将不起作用。如PEP 236所述,将来的语句在编译时处理在运行时,所以无论是否有冗余的未来语句,模块都应该是无法区分的。
即使不需要,导入也不会导致任何错误。这允许开发人员编写在Python 2和Python 3上交叉兼容的Python模块。
答案 1 :(得分:1)
From the documentation on Future Statements:
Python 3.0识别的功能包括absolute_import,division,generators,unicode_literals,print_function,nested_scopes和with_statement。它们都是冗余的,因为它们始终处于启用状态,并且只能保持向后兼容性。
所以如果你使用的是Python 3,那么。没有必要。