編輯:鏈接的帖子沒有解決這個問題,這仍然是一個突出的問題。Spyder中的Python time.sleep:如何在打印語句之間暫停?
我在Spyder的與IPython中執行下面的程序:
import time
print "Please enter your name."
userName=raw_input();
print "Now let's wait a few seconds, {}.".format(userName)
time.sleep(1)
print "Did you lose your patience?"
它提示用戶輸入他們的名字,然後(而不是打印的第一行,等待,然後,打印第二行)時,它暫停然後同時打印最後兩個打印語句的輸出。
當我從命令行運行時,它按預期工作。所以沒有人知道我能做些什麼,以便腳本在Spyder/iPython中顯示所需的行爲(我在Windows 7中工作,Spyder 2.2.5在Python 2.7中運行iPython)。
請注意,因爲我從命令行運行時得到預期的行爲,因此Why is time.sleep pausing early?的建議不是透明適用的,但可能很容易將此解決方案移植到此案例中?另外,在睡眠命令之前運行'sys.stdout.flush()'似乎沒有任何作用。
在睡覺之前嘗試調用'sys.stdout.flush()'。 – vanza
查看http://stackoverflow.com/questions/8031410/why-is-time-sleep-pausing-early?rq=1 – schodge
@vanza沒有做任何事情。 – neuronet