3 回答

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊
一種方法是使用ANSI轉(zhuǎn)義序列:
import sys
import time
for i in range(10):
print("Loading" + "." * i)
sys.stdout.write("\033[F") # Cursor up one line
time.sleep(1)
有時(shí)也有用(例如,如果您打印的內(nèi)容比以前短):
sys.stdout.write("\033[K") # Clear to the end of line

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超18個(gè)贊
import sys
import time
a = 0
for x in range (0,3):
a = a + 1
b = ("Loading" + "." * a)
# \r prints a carriage return first, so `b` is printed on top of the previous line.
sys.stdout.write('\r'+b)
time.sleep(0.5)
print (a)
請(qǐng)注意,您可能必須在運(yùn)行sys.stdout.flush()之后立即運(yùn)行,sys.stdout.write('\r'+b)具體取決于要進(jìn)行打印的控制臺(tái),以便在請(qǐng)求時(shí)打印結(jié)果而沒(méi)有任何緩沖。
添加回答
舉報(bào)