簡體   English   中英

替換上一行代碼

[英]Replacing a previous line of code

因此,這是在Python中進行的,我正在嘗試創建一個帶有重復的“ ...”的“加載屏幕”,在該屏幕上輸出“ ...”,等待一秒鍾,然后將其替換為另一個“ ...”,但一次可能只有1個點(尚未嘗試過)。 我只是想知道是否可以這樣做,如果可以,怎么做。 任何幫助將非常感激。 我已經嘗試過以下內容,但是它只是重復一遍(這不足為奇)。

load = 0
while load != 3:
    loader = "..."
    print loader
    sleep(1)
    loader.replace("...", "   ")
    load = load + 1

可以這樣做

from time import sleep
load = 0
dot_list = ['...', '.  ', '.. ']
while load <= 6:
    print(dot_list[load % len(dot_list)])
    sleep(1)
    load = load + 1

但是,就像@ Kev1n91所說的那樣,您應該檢查一下tqdm軟件包,看看它是否比您想做的更好

from sys import stdout
from time import sleep


load = 0
while load != 3:
    stdout.write("\r..." + str( load))
    stdout.flush()
    #print(load)
    sleep(1)
    #stdout.flush()
    load = load + 1

此代碼示例僅放置3個點,然后向上計數一個數字,因此在最接近的行中,“ ... 1”后跟“ ... 2”

from tqdm import tqdm


for load in tqdm(range(0,3)):
    sleep(1)

我喜歡在這種情況下使用的一種簡潔工具。

如果您想堅持自己的實現,您可能會發現此線程很有用: 動態打印一行

暫無
暫無

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

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