我使用R命令从R运行python脚本:
system('python test.py')
但是我的test.py中的print语句在python程序完成之前不会出现在R控制台中。我希望查看打印语句,因为python程序在R里面运行。我也试过sys.stdout.write()
,但结果是一样的。非常感谢任何帮助。
这是我的test.py代码:
import time
for i in range(10):
print 'i=',i
time.sleep(5)
答案 0 :(得分:2)
使用R v3.0.1在Windows 8上测试
只需右键单击r控制台,然后取消选中/取消选择 Buffered Output
选项(参见下图)。现在执行您的代码,您将看到print
语句的输出!
更新:
我忘了提到我还需要在python文件中的sys.stdout.flush()
语句之后添加print
。
import time
import sys
for i in range(5):
print 'i=',i
sys.stdout.flush()
time.sleep(1)
此外,如果您选择Buffered Output
选项,则在脚本执行时左键单击r控制台时,您将看到输出。继续单击,显示输出。 :)