你好,我是一位年轻人的头像

行行无别语,只道早还乡


paradoxt /a/ 163.com


关于python中的flush问题

  今天写了一个控制台下的进度条小程序,遇到了关于flush的问题,在这里小小的总结一下。

 

  首先在要flush的字符串必须后边加上'\r'(回车) 将数据送入缓冲区这样在新打印字符的时候就可以将原来的显示覆盖掉

 

  instance:

  

sys.stdout.write('Here are some codes.\r')
sys.stdout.flush()
time.sleep(2)

sys.stdout.write('Here are some new codes.\r')
sys.stdout.flush()
time.sleep(2)

 

  运行前两秒结果:

Here are some codes.

 

 运行后两秒结果:

 

Here are some new codes.
>>> 

 

 

可以看出后面输出的一行把前边的一行给覆盖掉了。

 

posted @ 2016-01-27 12:35  行行无别语只道早还乡  阅读(1322)  评论(0编辑  收藏  举报