سؤال

Okay, so I'm making a small programme for fun and I'd like to create a refresh button that allows the user to control how regularly the data is collected and shown. I decided to use the time.sleep(x) x being what the raw_input was. But it doesn't seem to be working as it should. It pauses the full script then does everything.

eg:

import time

print "This now"
time.sleep(x)
print "and this after x amount of  seconds"

So should print the first part then the second after x amount of seconds.

But instead it prints all of it at once after x amount of seconds.

When I use a if statement after it seems to wait an extra x amount seconds for printing whatever's in the if statement.

This really messes up my data when put in anything higher than 0 its old data by x amount. For example, if I put in 60 it would be a whole minute old data (not live). Leaving it at 0 just spams the console with too much though making it impossible to read.

Any idea why and how to fix my problem?

هل كانت مفيدة؟

المحلول

This is because of output buffering. You should turn it off. Refer to this post: Disable output buffering

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top