不久前,我从 Enthought 的旧 EPD 切换到他们更新的 Canopy 系统。在大多数情况下,它很好,但有一个方面特别令人烦恼。
每当我从 Canopy iPython 环境或命令行运行 python 脚本print
时,当脚本的那部分被命中时,我的任何语句实际上都不会立即打印出来。相反,多个print
s 似乎在以后一次全部执行。
举个例子...
import numpy as np
print "About to start long computation..."
a = np.random.randn(1e8)
print "Computation finished."
当两个语句同时打印时,在after 生成完成之前不会打印第一条语句。a
(您可以通过观察 CPU 监视器来判断计算何时发生。)
有谁知道这里发生了什么?如果相关,我在 Windows 7 机器上运行 Canopy 1.0.0.1160 和 Python 2.7.3 64 位。