python - 函数中带有 time.sleep() 的 sys.stdout.write() 的问题

标签 python buffering

我想要的是使用 time.sleep() 打印出每秒打印一个点的 5 个点,但结果是在延迟 5 秒后一次打印了 5 个点。
尝试了 print 和 sys.stdout.write,结果相同。

感谢您的任何建议。

import time
import sys

def wait_for(n):
    """Wait for {n} seconds. {n} should be an integer greater than 0."""
    if not isinstance(n, int):
        print 'n in wait_for(n) should be an integer.'
        return
    elif n < 1:
        print 'n in wait_for(n) should be greater than 0.'
        return
    for i in range(0, n):
        sys.stdout.write('.')
        time.sleep(1)
    sys.stdout.write('\n')

def main():
    wait_for(5)    # FIXME: doesn't work as expected

if __name__ == '__main__':
    try:
        main()
    except KeyboardInterrupt:
        print '\nAborted.'

最佳答案

写完需要冲水

sys.stdout.write('foo')
sys.stdout.flush()
wastetime()
sys.stdout.write('bar')
sys.stdout.flush()

关于python - 函数中带有 time.sleep() 的 sys.stdout.write() 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2808832/

相关文章:

javascript - 我可以从整个视频中接收一些数据并选择性地控制其余数据吗?

c# - BufferedInputStream(在 Java 中)的 C#/.NET 等价物是什么?

python - pytest-timeout - 测试失败而不是杀死整个测试运行

python - subprocess.Popen : Different buffering for stdin, 标准输出,标准错误?

python - 在 Python 中生成包含对象属性的字典

python - 如何为基于 Django MPTT 的分类应用程序添加尾部斜杠?

iphone - 如何在 ARToolKitPlus 中使用 UIImage? (UIImage 到 CVImageBufferRef 的转换)

c - 将 C 程序设置为行缓冲区将不起作用

python - Flask 返回 404 触发异常 block 并且不返回 Not Found

Python 应用程序行为异常,是否缓存了 URL 参数?