Ответ 1
Вы не можете получить версию из 3.4, импортированную в Python 2.7, no. Просто очистите sys.stdout
вручную после печати:
import sys
print(...)
sys.stdout.flush()
Или вы можете создать функцию-оболочку вокруг print()
, если у вас должно быть что-то, что принимает аргумент ключевого слова:
from __future__ import print_function
import sys
try:
# Python 3
import builtins
except ImportError:
# Python 2
import __builtin__ as builtins
def print(*args, **kwargs):
sep, end = kwargs.pop('sep', ' '), kwargs.pop('end', '\n')
file, flush = kwargs.pop('file', sys.stdout), kwargs.pop('flush', False)
if kwargs:
raise TypeError('print() got an unexpected keyword argument {!r}'.format(next(iter(kwargs))))
builtins.print(*args, sep=sep, end=end, file=file)
if flush:
file.flush()
Это создает заменяющую версию, которая будет работать так же, как версия в версии 3.3 и выше.