That ought to work. What I suspect isn’t happening is the implicit
flush-on-newline behaviour, because you’re no longer ending lines with a
newline. Adding flush=True to the print options will test that for you.
The stdout stream is normally line buffered when directed to a terminal,
but a “line” is delimited by a newline character. For timely updates, if
you’re not using that character, you need to flush the buffer at the end
of the print().