Sean McIlroy wrote:
Fair enough. Here's the verbose version:
######################################################################
from time import sleep,time,localtime
wakeuptime = (7,00)
## I WANT TO BE WOKEN UP AT 7AM (FOR EXAMPLE)
onehourlater = (wakeuptime[0]+1, wakeuptime[1])
## ONE HOUR LATER THAN THAT IS 8AM
while not wakeuptime < localtime(time())[3:5] < onehourlater: sleep(3)
## CHECK THE CURRENT TIME EVERY 3 SECONDS, AND IF IT'S NOT BETWEEN
## 7AM AND 8AM, GO BACK TO SLEEP FOR ANOTHER 3 SECONDS
## CONTROL NEVER REACHES THIS POINT
######################################################################
Works for me in the following slightly-adjusted form (easier for testing):
def alarm(wakeuptime):
#wakeuptime = input('hours: '), input('minutes: ')
onehourlater = (wakeuptime[0]+1, wakeuptime[1])
while not wakeuptime < localtime(time())[3:5] < onehourlater:
sleep(3)
print 'PLAY A SOUND FILE'
print localtime(time())[3:5]
>>> localtime(time())
(2005, 3, 26, 11, 37, 58, 5, 85, 0)
>>> alarm((11,38))
PLAY A SOUND FILE
(11, 39)
>>>
>>> import sys
>>> sys.version
'2.4 (#60, Nov 30 2004, 11:49:19) [MSC v.1310 32 bit (Intel)]'
>>> sys.platform
'win32'
>>>
Michael
--
http://mail.python.org/mailman/listinfo/python-list