python print 打印延迟问题

  • Post author:
  • Post category:python


print 作为python中最常用的一个函数,其实是有一个小问题的,就是默认情况下,python的print是启用了stdout缓冲的,这意味着在某些情况下,你的输出可能不会被立刻打印出来,而是会被存在缓冲区中,等待某个契机被触发打印。

这就造成了python的打印延时问题,小问题,但是很烦人

解决方案有两种:

  • 每次print之后,都调用stdout的flush()函数,把缓冲区手动打印出来,但是这样太麻烦了;
  • 使用命令行参数

    -u

    来启动python,即通过

    python -u xxx.py

    来执行脚本,这样子会禁用stdout缓冲,输出可以被立即打印。

可以查阅参考文献2,博主描述了下关于缓冲区的几个概念。

参考文献:


  1. python print延迟问题的解决方案

  2. python—打印函数print延时且不按顺序输出



版权声明:本文为wlh2220133699原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。