[PYTHON] Das Aufrufen von time.sleep () nach der Druckfunktion mit dem Endargument wird nicht gedruckt

Problem

Ich möchte die Zahlen von 0 bis 9 jede Sekunde anzeigen.

count.py


# -*- coding: utf-8 -*-
import time

i = 0
while(i<9):
    print(i, end='')
    time.sleep(1)
    i+=1

Lauf.

% python3 count.py

... dass nichts "gedruckt" wird und nach ein paar Sekunden nichts passiert ...

Als Test

count.py


# -*- coding: utf-8 -*-
import time

i = 0
while(i<10):
    print(i)
    time.sleep(1)
    i+=1

(Versuchen Sie das Argument end zu löschen),

% python3 count.py
0
1
2
3
4
5
6
7
8
9
%

Wird jede Sekunde angezeigt. Ich möchte jedoch "end" angeben ...

Lösung

Habe das Argument "Flush".

count.py


# -*- coding: utf-8 -*-
import time

i = 0
while(i<10):
    print(i, end='', flush=True)
    time.sleep(1)
    i+=1

Wenn ich es laufen lasse,

% python3 count.py
0123456789%

Es ging gut.

Recommended Posts

Das Aufrufen von time.sleep () nach der Druckfunktion mit dem Endargument wird nicht gedruckt
Nach der Installation von php7.2 funktioniert der Befehl php nicht
Überprüfen Sie, wann die Version nicht in pyenv wechselt
Wenn Sie eine Liste mit dem Standardargument der Funktion angeben ...
Python> enthält die Buchstaben mm> nicht, wenn "mm" nicht im Text enthalten ist: / print "mm nicht enthalten"
Das Modul, das mit pip installiert werden sollte, läuft nicht
python> print> Wird es erst am Ende des Prozesses umgeleitet?> Mit -u ausführen