在Sublime Text中运行脚本时,我无法让Python 3打印出来。我可以在脚本完成后打印出来,但我需要它来打印。
这是一些示例代码
import time
for x in range(10):
print("Test")
time.sleep(1)
使用Python 3作为构建系统,我什么也得不到10秒,然后一次打印10个“测试”。
如果我使用Python 2构建系统运行相同的脚本,我会每秒打印1个“测试”,这就是我想要的。
同样,如果我在终端中使用“python3 script.py”运行脚本,我会每秒打印出1“Test”。
有谁能告诉我如何让Sublime Text 3中的构建系统在运行时打印出Python 3?
答案 0 :(得分:1)
您必须打开Python 3构建系统配置文件,并确保将-u
选项提供给要执行的命令行。
例如:
# ~/.config/sublime-text-3/Packages/User/Python3.sublime-build
{
"cmd": ["/usr/bin/python3.5", "-u", "$file"],
"selector": "source.python",
"file_regex": "file \"(...*?)\", line ([0-9]+)"
}
-u
强制stdout和stderr流的二进制层(即 可用作缓冲区属性)无缓冲。文本I / O. 如果写入控制台,则图层仍将是行缓冲的,或者 如果重定向到非交互式文件,则阻止缓冲。
使用此选项,您的Python脚本的ouptut将在运行时正确显示到Sublime Text。