[Tutor] Making a function run every second.

Mic o0MB0o at hotmail.se
Tue Nov 29 16:52:47 CET 2011



-----Ursprungligt meddelande----- 
From: Dave Angel
Sent: Tuesday, November 29, 2011 4:33 PM
To: bodsda at googlemail.com
Cc: Mic ; Tutor - python List
Subject: Re: [Tutor] Making a function run every second.

>(You put your response in the wrong place;  it belongs after the part
you're quoting.)

Okay, thanks.


On 11/29/2011 10:19 AM, bodsda at googlemail.com wrote:
>> You won't get it exactly on because the time it takes to call the 
>> function will affect your trigger time.
>>
>> I would use something like an infinite loop with a 1 second sleep after 
>> the function call

>> Bodsda
> Sent from my BlackBerry® wireless device
>
>>> -----Original Message-----
>>> From: "Mic"<o0MB0o at hotmail.se>
>>> Sender: tutor-bounces+bodsda=googlemail.com at python.org
>>> Date: Tue, 29 Nov 2011 15:54:59
>>> To:<tutor at python.org>
>>> Subject: [Tutor] Making a function run every second.

>>> Hi

>>> I want a function to run every second , how do I do that?
>
>>> Say that the function look like this:
>
>>> def hi():
>      print("hi")

>Without a clearer spec, there are too many possible answers.  As Bobsda 
>says, you can't get it exactly one second apart.  But you also have the 
>problem of whether a drift is okay.  For example, if you have a global 
>you're incrementing each time that function runs, and you want it to 
>represent the total time the program has been running, then a simple 
>sleep() is totally wrong.

Okay, I undestand. Hmm, what is a drift?

>What I was concerned about is that perhaps this is for one of the tkinter 
>programs Mic is writing.  For an event-driven program, sleep() calls of 
>even a second are unaccepable.  And if you literally write a while loop 
>like that, your whole program would stop responding.

Yes, this is one of my tkinter programs :) Why would the program stop 
responding using a sleep()?

>So Mik:
>Tell us more about the real requirements.  Is drift acceptable, is this a 
>console program or some gui environment, are there any other hidden 
>assumptions?

Okay, this function approximately runs every second and check what the time 
is.
(Well, every 30 second or every minute would be okay if that makes it 
easier)
If the time is 15:00 it is supposed to remove a file. That should be all 
requirements!

I have figured out how to make the function check what time it is and how to
remove the file when the time is 15:00, but I don't know how to make it run 
every
second or something like that.


Thanks!

Mic 



More information about the Tutor mailing list