2016-03-27 13 views
1
#import RPi.GPIO as GPIO 
from datetime import datetime 
from time import strftime 
import time 

#Setting up GPIO 
#GPIO.setmode(GPIO.BCM) 
#GPIO.setup(23, GPIO.IN) 

#Datetime variables 
now_strf = strftime("%I:%M %p") 
quest = raw_input("What time would you like to wake up? ") 

while True: 
    if quest == now_strf: 
     print "Ring" 
     time.sleep(1) 
    else: 
     print now_strf 
     time.sleep(1) 

Mein Problem ist, druckt "Ring", wenn ich den Alarm für die Zeit einstellen, die es jetzt ist, aber wenn ich es für eine Minute oder zwei später setze, geht es nicht aus. Was mache ich falsch?Probleme mit meinem einfachen Wecker

Antwort

0

In Ihrer while Schleife vergleichen Sie zwei Variablen, quest und now_strf.

Das Problem ist, dass now_strf ändert sich nie. Sie müssen now_strf mit der aktuellen Zeit in jeder Iteration aktualisieren:

while True: 
    now_strf = strftime("%I:%M %p") 
    if quest == now_strf: 
     print "Ring" 
     time.sleep(1) 
    else: 
+0

Vielen Dank. Ich habe viel zu viel Zeit damit verbracht, zu versuchen, dies zum Laufen zu bringen. Wusste nicht, dass es so einfach war. – dannnyt97