Temelde bu adamın yaptığının tam tersini yapmak istiyorum ... hehe.
Python Komut Dosyası: Mevcut satırı güncellemek yerine her seferinde kabuk için yeni satır yazdırın
Bana ne kadar ilerlediğini söyleyen bir programım var.
for i in some_list:
#do a bunch of stuff.
print i/len(some_list)*100," percent complete"
Yani eğer len (some_list) 50 olsaydı, o son satırı 50 kez yazdırırdım. Bir satır yazdırmak ve o satırı güncellemeye devam etmek istiyorum. Bunun muhtemelen bütün gün okuyacağın en kötü soru olduğunu biliyorum. Cevabı almak için google'a koymam gereken dört kelimeyi çözemiyorum.
Güncelleme! Mvds'nin doğru görülen önerisini denedim. Yeni kod
print percent_complete," \r",
Tamamlanma yüzdesi sadece bir dizedir (ilk kez soyutluyordum, şimdi gerçek olmaya çalışıyorum). Şimdi sonuç, programı çalıştırması, program bitene kadar HİÇBİR ŞEY yazdırmaması ve ardından bir ve yalnızca bir satıra "yüzde 100 tamamlandı" yazmasıdır.
Satır başı olmadan (ancak virgülle, mvds'nin önerisinin yarısı) sonuna kadar hiçbir şey yazdırmaz. Ve sonra şunu yazdırır:
0 percent complete 2 percent complete 3 percent complete 4 percent complete
Ve bunun gibi. Şimdi yeni sorun, virgülle program bitene kadar yazılmamasıdır.
Satır başı ile ve virgül yokken hiçbiriyle aynı şekilde davranmaz.
sys.stdout.isatty()
Bir terminalde çalışmadığınızda bunları tükürmemek için kontrol etmek isteyebilirsiniz .