2012-03-29 26 views
1

我試圖創建一個基於完全語音報時鐘在Python運行在間隔1小時線在python

我想知道如何運行

spk.speak('It is now <time>') 

每次espeak的系統打時間的像12:00 1:00等

+0

什麼操作系統的別名在嘛?自己寫這樣的東西很少是一個好主意。 'cron'或者你係統上的等價物將是一個更好的選擇。 – 2012-03-29 04:17:43

+1

也許OP想要一個跨平臺的解決方案,或者不能訪問類似'cron'的東西。 – 2012-03-29 04:21:23

+0

是的,沒有cron ..只是獨立:D – 2012-03-29 04:25:40

回答

10
import time 
while True: 
    # sleep for the remaining seconds until the next hour 
    time.sleep(3600-time.time()%3600) 
    spk.speak('It is now <time>') 
+0

+1正是我要說的。 – 2012-03-29 04:19:30

+0

思考閏秒?不是每個小時都有3600秒! – marsl 2013-11-19 15:20:57

6

你沒有指定你使用的是什麼操作系統,但是在間歇跑的東西是Linux和Unix的一些cron般過程的工作。在Windows上,有windows task scheduler

您設置這些系統以間隔運行您的命令。

例如,這個cron項運行該腳本每隔一小時:

0 * * * * /usr/bin/python /home/myuser/somefile.py

你一個也使用:

@hourly /usr/bin/python /home/myuser/somefile.py

@hourly0 * * * *