无换行打印

嗨,
我在打印没有新行的字符时遇到了一个关于python的问题。
我想打印一张"。显示搜索操作的进度。
演示该问题的简单代码是

选择 | 换行 | 行号
  1. import time
  2. for i in range(10):
  3.     print(".",end="")
  4.     time.sleep(10) 

我期待着看到一个"。"在每一次睡眠/每次迭代之后。然而,只有当循环结束或我终止运行时,我才能看到它。
输出:
C:\Python30>python.exe c:\USERS\SS001\Desktop\PythonScrip\try.py
..回溯(最近一次呼叫):
文件"c:\USERS\SS001\Desktop\PythonScrip\try.py",第4行,
睡眠时间(10)
键盘中断

# 回答1


不使用打印,而是写入sys.stdout并在每次迭代中刷新缓冲区。

选择 | 换行 | 行号
  1. import sys, time
  2.  
  3. for i in range(25):
  4.     sys.stdout.write(".")
  5.     sys.stdout.flush()
  6.     time.sleep(.1)
  7. print
# 回答2


非常感谢……这招奏效了……

标签: python

添加新评论