sys.stdout is not flushed

Jankins andyjian430074 at gmail.com
Mon Nov 23 16:57:23 EST 2009


I am trying to use sys.stdout to print out "process-bar" like:
-->1%

Here is my program ‘test.py’:

from sys import stdout
for v in range(10):
    stdout.write('-->%d' % v)
    stdout.flush()
else:
    stdout.write('done!')
#end for

Then, I use 'python -u test.py' to run this script. But what I get
is :
-->0-->1-->2-->3-->4-->5-->6-->7-->8-->9done!

I am suppose to get 'done!'.

Can anybody help me about this?

Thanks.

Jankins



More information about the Python-list mailing list