目前,当我
from __future__ import print_function
从Python
2.7.6开始,我显然在添加flush
关键字参数之前获得了print()的版本,根据docs,关键字参数已在Python
3.3中使用。我的系统(Ubuntu)中安装的Python3是Python 3.4,我验证了其print()函数具有该flush
参数。
如何print()
从3.4导入功能?从何处__future__
获得较早的打印功能?
您无法从导入到Python 2.7的3.4中获取版本,否。只需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及更高版本中的版本相同。
我有这个错误:
问题内容: 注意:这似乎是“ javac”程序中的限制。 我有需要为Java 5 JVM构建的Java 6代码。我以前使用javac ant目标(同时使用JDK编译器和ecj)的工作使我相信,这仅仅是为javac设置源和目标的问题。因此,此pom.xml片段: 在具有Maven支持的Eclipse 3.7中可以正常工作。不幸的是,直接从命令行运行Maven给了我 与产生的相同。澄清一下,这是Ubu
在使用IntelliJ IDEA运行JUnit测试时,我得到 我该如何纠正这一点呢? 使用SDK 1.7 模块语言级别为1.7 Maven build工作良好。(这就是为什么我在IDEA configuration issue中相信这一点)
所以我更改了我的依赖项,如下所示: 但我不知道从哪里可以把1.6级改成1.8级... 当我编译应用程序时,我遇到了这个错误: 提前致谢:)
如何解决那个错误?? 我的生成分级文件是
我正在尝试使用最新的Gradle版本(2.0),但我不断得到这个消息,当点击Gradle构建在终端。为什么它要1.10版本?我对Gradle是个新手,所以我想好好想想。 需要Gradle版本1.10。当前版本为2.0 最后一件事是在中,我选择了“使用可定制的gradle包装器” 设置为C:\Program Files(x86)\gradle\gradle-2.0 build.gradle文件: 更