无法正确打印 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 命令的正确退出代码?

在Python中打印程序中2点之间的时间[重复]

八月月份在 python 中无法正确打印

Python/MatPlotLib:无法在 y 轴上打印正确的数据

Python错误:打印(数据+“\ n”)类型错误:尝试通过网络套接字发送命令时无法将str连接到字节[重复]

python 练习题1--打印三位不重复数字