Python __future__ методы - PullRequest
       5

Python __future__ методы

1 голос
/ 28 декабря 2010

Было бы правильно сказать, что если 'print' не указан в качестве одного из методов в

__future__.__dict__.keys() 

, то используемая мной версия Python не обеспечивает будущую функцию печати?(Я использую Python 2.5.5.)

Ответы [ 3 ]

2 голосов
/ 28 декабря 2010

Да, но это будет print_function, и это было введено в Python 2.6.

2 голосов
/ 28 декабря 2010

Почти правильно. Функция называется print_function, а не печать.

Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import __future__
>>> __future__.print_function
_Feature((2, 6, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0), 65536)
0 голосов
/ 28 декабря 2010

Да.Это правильно. Но лучшим способом сделать эту проверку будет:

try: from future import print_function кроме ImportError: print "print is stmt"

Вы не можете выполнить описанный выше способ импорта и проверки функции print_function.Кажется доступными способы, проверяя с помощью sys.version и проверяя словарь __future__, как вы делаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...