help understanding time.sleep() behavior
sessile at in-gen.net
sessile at in-gen.net
Sat Mar 11 13:33:16 EST 2000
In this case under Pythonwin, you could explicitly flush
stdout after each 'print x' to get the behavior you were
expecting:
>>> import sys, time
>>> for x in range(5):
... print x
... sys.stdout.flush()
... time.sleep(1)
At 07:28 PM 3/10/2000 -0500, Gordon McMillan wrote:
>Andy Fox wrote:
>>
>> I would like my program to pause for a second within a loop, but instead
>> it pauses for n seconds, where n is the number of iterations through the
>> loop, then executes the other statements.
>>
>> I'm running PythonWin on an NT machine.
>>
>> Here's the (embarassingly simple) code:
>>
>> >>> import time
>> >>> for x in range (5)
>> ... print x
>> ... time.sleep(1)
>> ... <-- pauses here for five seconds
>> 0 <-- then prints the values quickly
>> 1
>> 2
>> 3
>> 4
>
>Your program does exactly what you think it does. Pythonwin
>just buffers output in a non-smooth manner. Run it under
>python.exe instead and you'll see.
>
>- Gordon
More information about the Python-list
mailing list