My problem is, that I want to be able to overwrite/clear previous printed line in python console. This question has been asked many times (Python - Remove and Replace Printed items for example), however with the very same code that is
(the answer marked as correct, for me prints out nothing at all):
for i in range(10):
print("Loading" + "." * i)
time.sleep(1)
sys.stdout.write("33[F") # Cursor up one line
sys.stdout.write("33[K") # Clear to the end of line
I get the output (In python IDLE) :
Loading
[F[KLoading.
[F[KLoading..
[F[KLoading...
[F[KLoading....
[F[KLoading.....
[F[KLoading......
[F[KLoading.......
[F[KLoading........
[F[KLoading.........
[F[KLoading..........
[F[K
Any ideas? I googled a lot, nothing works really. It either prints out nothing or just does not overwrite.
If that helps, I am running windows 8.1 and Python 3.51. Running the code trough cmd doesn't affect anything.
Also, adding sys.stdout.flush()
does not help.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…