簡體   English   中英

為什么在 `time.sleep` 調用之間不會出現在同一行上的 `print`ed 輸出?

[英]Why doesn't `print`ed output on the same line appear between `time.sleep` calls?

所以我在使用 Python 時遇到了一些麻煩。 我有一個代碼是:

import time

def printChat(string, sleepTime):
    for a in string:
        print (a, end="")
        time.sleep(sleepTime)
    print()

當我執行 printChat("Hello", 0.1) 時,它應該打印一個字母並等待 0.1 秒,然后打印下一個,但相反,它等待 0.5 秒(因為 ' hello ' 是 5 個字符長),然后打印 hello all突然。 知道為什么嗎?

你應該使用:

        print (a, end="", flush=True)

因為控制台輸出是行緩沖的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM