python---打印函数print延时且不按顺序输出

在分析Zephyr系统时遇到Python程序的打印问题,发现输出顺序与逻辑不符,这与输出缓冲有关。通过使用`python -u`或`flush buffer`方法可以解决该问题。本文介绍了全缓冲、行缓冲和无缓冲的概念,并详细讲解了print函数的工作原理,包括其刷新和缓冲设置。
摘要由CSDN通过智能技术生成

在分析zephyr系统时,看编译过程遇到了python语言的程序,在里面加入了一些打印,结果输出的结果不是按顺序输出的,使用不同的命令窗口,如windows的DOS,MINGW64发现输出的结果不一致。原来是带的输出缓冲引起的

在这里插入图片描述

在逻辑上应该是
print(“------------------------------”)
这一句代码执行的,可是从结果来看却是先打印了-- west 这个信息。要解决这个问题就是要关闭缓冲,或者立即输出
但是我们知道print函数默认是有刷新换行的,可知跟不同的编译环境有关

1.python -u

不走缓冲区

在这里插入图片描述
在这里插入图片描述
可以看到是按逻辑输出的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个专研技术的小蜜蜂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值