Я могу сообщить, как сообщалось, что несколько сообщений о решениях работали для меня в Windows 10. У меня также возникла проблема с выходом строки строки tqdm, прерванной печатью, выполненной до tqdm. Решение, которое работало для меня
sys.stdout.flush()
Тот, который не был дополнением к отпечаткам
flush=True
Я думаю, что sys.stdout.flush является лучшим, насколько это ТОЧНО что нужно сделать ... вывод на stdout нужно очистить, чтобы он был завершен до первого вывода на stderr с помощью tqdm ... самых основных проблем ввода-вывода.
Я ЛЮБЛЮ способность этого маленького виджета привнести немного элегантности в другой скучный мир stdio.
:
Вы также можете попробовать с аргументом ключевого слова 'flush' для печати, например,' print ("foo", flush = True) ' – Copperfield
Это не работает на окнах, но это более элегантно, чем ждать – R3turnz
Это не является причиной того, что распечатки заканчиваются в неправильном порядке, и спать в течение фиксированного времени может все же сбой в определенных ситуациях в зависимости от того, насколько быстро Python может обрабатывать различные команды, которые печатаются на терминале (хотя в этом [ MWE] (https://en.wikipedia.org/wiki/Minimal_Working_Example), вероятно, будет работать). См. Мой ответ для решения, в котором вам не нужно использовать 'time.sleep'. – HelloGoodbye