CMD调用Python时经常会发现执行过程中没有print输出,直到程序执行结束后才会将打印内容一次性输出出来。这是应为Python的print输出默认写入stdout缓冲,总量达到4k后才会全部打印出来。Pycharm中屏蔽了这种缓冲,所以在Pycharm中调试时并不会发现这样的问题。
一般使用-u参数启动python,就可以立刻获取输出了。
1 python -u demo.py
但在某些情况下即使使用了-u参数也无济于事,更好的方法是在print函数中修改一个参数:
1 print(‘right‘, flush=True)
原文:https://www.cnblogs.com/MariOdyssey/p/11790388.html