5

兄の助けを借りて、この小さな目覚まし時計を作りました。昨夜試してみましたが、 と はnonBlockingRawInput問題なく機能しましたが、nonBlockingRawInputでは機能しませんでした。今日、私はそれを試しましたが、どちらも機能しません! nonBlockingRawInput「非」ファイルと一緒にコードを投稿します。なしのコードが必要な場合は、おnonBlockingRawInput問い合わせください。

前もって感謝します。

アラーム rpi.py :

import time
import os
from non import nonBlockingRawInput

name = input("Enter your name.")

print("Hello, " + name)

alarm_HH = input("Enter the hour you want to wake up at")
alarm_MM = input("Enter the minute you want to wake up at")

print("You want to wake up at " + alarm_HH + ":" + alarm_MM)

while True:
    now = time.localtime()
    if now.tm_hour == int(alarm_HH) and now.tm_min == int(alarm_MM):
        print("ALARM NOW!")
        os.popen("open mpg321 /home/pi/voltage.mp3")
        break

    else:
        print("no alarm")
    timeout = 60 - now.tm_sec
    if nonBlockingRawInput('', timeout) == 'stop':
        break

non.py :

import signal

class AlarmException(Exception):
    pass

def alarmHandler(signum, frame):
    raise AlarmException

def nonBlockingRawInput(prompt='', timeout=20):
    signal.signal(signal.SIGALRM, alarmHandler)
    signal.alarm(timeout)
    try:
        text = input(prompt)
        signal.alarm(0)
        return text
    except AlarmException:
        pass
    signal.signal(signal.SIGALRM, signal.SIG_IGN)
    return ''
4

2 に答える 2

1
import winsound,time

a= int(input("Enter how many times I have beep  :"))
b= int(input("Enter when to wake up (in seconds) :"))

time.sleep(b)

for i in range(a):
    winsound.Beep(3000,100)
    winsound.Beep(2500,100)
    winsound.Beep(2000,100)    
    winsound.Beep(1000,100)    
    winsound.Beep(500,100)
于 2015-03-10T04:28:09.930 に答える