无法正确打印 Python 2 程序 [重复]
Posted
技术标签:
【中文标题】无法正确打印 Python 2 程序 [重复]【英文标题】:Can't get Python 2 program to print right [duplicate] 【发布时间】:2013-11-05 22:53:13 【问题描述】:while True:
volts = adc.readADCDifferential01(4096, 8)
print volts
这很好用,只是它会打印出一列电压,很快就会填满终端屏幕。我宁愿它并排打印电压并从左到右填充行。
我尝试在打印电压后加一个逗号,但屏幕上什么也没有显示,直到我按 control-C 停止程序。逗号确实会导致电压按行打印,但我需要实时观察读数,而不是盲目地等待,直到我怀疑测试完成。
为什么添加逗号会导致程序停止显示正在发生的电压?
【问题讨论】:
【参考方案1】:Python 在行缓冲模式下打开 stdout
,因此在不打印换行符时,在刷新之前您不会看到列中打印的电压。
手动刷新缓冲区:
import sys
while True:
volts = adc.readADCDifferential01(4096, 8)
print volts,
sys.stdout.flush()
【讨论】:
以上是关于无法正确打印 Python 2 程序 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
Python/MatPlotLib:无法在 y 轴上打印正确的数据