проблема с функцией печати python - PullRequest
4 голосов
/ 15 сентября 2010

Я пытаюсь эту функцию:

def sleep(sec):
    for i in range(sec):
        print(".", end=" ");
        time.sleep(1);

проблема в том, что он ожидает завершения цикла for, а затем печатает все. Если я использую обычную печать с \ n, в конце все работает как надо. Но с конца = "" это не так.

1 Ответ

5 голосов
/ 15 сентября 2010

stdout - строка с буферизацией. Вам необходимо очистить вывод вручную.

import sys

def sleep(sec):
    for i in range(sec):
        print(".", end=" ")
        sys.stdout.flush()
        time.sleep(1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...