2014-03-18 74 views
0

我使用記事本++編寫代碼,然後使用Windows Power Shell查看輸出。現在可以說,我需要打印...如何打印正在運行的文本?打印「堆棧」的例子Python會打印S然後t然後a然後c然後k?

「堆棧溢出」

但並不是所有的一次。首先它會打印S然後t然後c然後k然後一個空格然後O ......?

那麼有什麼功能/方法可以在我們鍵入舊PC時發佈文本?

如果問題沒有完成,讓我知道我可以提供什麼更多的信息。

更新

@uʍopǝpısdn是的,你明白我的要求。很多謝謝你的答案。 :)

嗯,我不知道它調用仿真文本。 :)

回答

5

在這裏你去:

import time, sys 

for letter in "Stack Overflow": 
    sys.stdout.write(letter) 
    sys.stdout.flush() 
    time.sleep(1) # that's in seconds, adjust at will 

sys.stdout.write('\n') 

爲什麼stdout.flush?

運行程序的輸出通常被緩衝(即保持等待),直到滿足某些條件。撥打sleep()將不會滿足這些條件,並且文本不會顯示。通過在每封信後打電話flush(),你強制它。

+2

這將產生'''S粘性överflow'''(每個字母之間的空間) – wnnmaw

+1

右您,切換到'stdout.write()' – slezica

+2

需求sys.stdout.flush( )在每封信後出現。 – kindall

1
from __future__ import print_function # only needed for Python 2.x 
import random 
from time import sleep 

def delay_print(s, min_delay=0.1, max_delay=0.8): 
    for ch in s: 
     delay = min_delay + random.random() * (max_delay - min_delay) 
     sleep(delay) 
     print(ch, end="") 
    print('') 

delay_print("StackOverflow") 
相關問題