Về cơ bản tôi muốn làm ngược lại những gì anh chàng này đã làm ... hehe.
Python Script: In dòng mới mỗi lần để trình bao thay vì cập nhật dòng hiện có
Tôi có một chương trình đang cho tôi biết nó còn bao xa.
for i in some_list:
#do a bunch of stuff.
print i/len(some_list)*100," percent complete"
Vì vậy, nếu len (some_list) là 50, tôi sẽ in dòng cuối cùng đó 50 lần. Tôi muốn in một dòng và tiếp tục cập nhật dòng đó. Tôi biết tôi biết đây có lẽ là câu hỏi hay nhất mà bạn sẽ đọc cả ngày. Tôi chỉ không thể tìm ra bốn từ tôi cần đưa vào google để có câu trả lời.
Cập nhật! Tôi đã thử đề xuất của mvds mà SEEMED đúng. Mã mới
print percent_complete," \r",
Phần trăm hoàn thành chỉ là một chuỗi (tôi đã trừu tượng hóa lần đầu tiên bây giờ tôi đang cố gắng hiểu theo nghĩa đen). Kết quả bây giờ là nó chạy chương trình, không in BẤT KỲ ĐIỀU GÌ cho đến khi chương trình kết thúc, và sau đó in "hoàn thành 100 phần trăm" trên một và chỉ một dòng.
Nếu không có dấu xuống dòng (nhưng có dấu phẩy, một nửa gợi ý của mvds), nó không in gì cho đến cuối. Và sau đó in:
0 percent complete 2 percent complete 3 percent complete 4 percent complete
Và như thế. Vì vậy, bây giờ vấn đề mới là với dấu phẩy nó không in cho đến khi chương trình kết thúc.
Với dấu xuống dòng và không có dấu phẩy, nó hoạt động giống hệt như với không.
sys.stdout.isatty()
để không nói ra những điều này khi không chạy trong thiết bị đầu cuối.