2013-01-09 42 views
0

我必須做些什麼來顯示文本動態?如何創建動態文本?

Some text [-]Some text [|]然後回到Some text [-]

有沒有辦法做到這一點,而不清除整個屏幕?

回答

2

對於您可以使用兩種技術POSIX終端:

  • \r回車返回到開始行

  • \b退格明確幾個字符。

在這兩種情況下,我會使用sys.stdout.write()和flush一起寫出來。

使用\b退格演示:

import sys 
import time 
sys.stdout.write('Some text [\\]') 
for i in ['-', '/', '|', '\\'] * 10: 
    sys.stdout.write('\b\b\b[{0}]'.format(i)) 
    sys.stdout.flush() 
    time.sleep(1) 

使用\r回車演示:

import sys 
import time 
for i in ['-', '/', '|', '\\'] * 10: 
    sys.stdout.write('\rSome text [{0}]'.format(i)) 
    sys.stdout.flush() 
    time.sleep(1)