En Tue, 17 Jun 2008 04:10:41 -0300, Rich Healey <[EMAIL PROTECTED]> escribió: > Gabriel Genellina wrote: >> En Tue, 17 Jun 2008 03:15:11 -0300, pirata <[EMAIL PROTECTED]> escribió: >> >>> I was trying to print a dot on console every second to indicates >>> running process, so I wrote, for example: >>> >>> for i in xrange(10): >>> print ".", >>> time.sleep(1) >>> >>> Idealy, a dot will be printed out each second. But there is nothing >>> print out until after 10 seconds, all 10 dots come out together. >>> >>> I've tried lose the comma in the print statement, and it works. >>> >>> Is that because of the print statement buffer the characters until >>> there is a new line character? >> >> Very probably, altough I can't reproduce it on Windows. Try invoking the >> script with python -u (unbuffered input/output): >> >> python -u your_script.py >> > Or just write to sys.stdout without the print wrapper..
I think the output is still buffered, even if you write directly to sys.stdout, but I don't have a Linux box to test right now. -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list