Используя python 2.6.5, я могу использовать оператор with
без вызова from __future__ import with_statement
. Как я могу узнать, какая версия Python поддерживает with
без специального импорта из __future__
?
Какая версия python требуется из __future__ import with_statement?
Ответ 1
__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__)
Ответ 2
Вам это нужно только в Python 2.5. Старые версии (< = 2.4) не поддерживают его, а более новые версии ( >= 2.6) включили его по умолчанию.
Итак, если вы хотите поддерживать Python >= 2.5, вы можете просто положить from __future__ import with_statement
в начале. Для более новых версий это просто будет проигнорировано.
Ответ 3
Из документа:
New in version 2.5.