使用python 2.6.5,我可以使用with
语句而不调用from __future__ import with_statement
。如何在不专门从with
导入的情况下判断哪个版本的Python支持__future__
?
答案 0 :(得分:46)
__future__
功能是自我记录的。试试这个:
>>> from __future__ import with_statement
>>> with_statement.getOptionalRelease()
(2, 5, 0, 'alpha', 1)
>>> with_statement.getMandatoryRelease()
(2, 6, 0, 'alpha', 0)
这些分别表示支持from __future__ import with_statement
的第一个版本以及不使用from __future__
支持它的第一个版本。
另外,请阅读:
>>> import __future__
>>> help(__future__)
答案 1 :(得分:16)
你只需要在Python 2.5中使用它。旧版本(< = 2.4)不支持它,而较新版本(> = 2.6)默认启用它。
因此,如果您想支持Python> = 2.5,您可以简单地将from __future__ import with_statement
放在开头。对于较新的版本,它将被忽略。
答案 2 :(得分:1)
来自doc:
New in version 2.5.