2016-11-27 83 views
0

代碼應該如何顯示,以便下面的腳本只能在06.30h和8.00h之間運行? 問候Python腳本只能在時間窗口中運行

#!/usr/bin/python 


from time import strftime  
import sys  
import subprocess from subprocess  
import Popen  
import pifacedigitalio  
from time import sleep 


pfd = pifacedigitalio.PiFaceDigital() # creates a PiFace Digital 
object testprocess = None 

while strftime('%H:%M') >= '06:29': 
    while(True): 
     sleep(0.1) 
     if pfd.input_pins[0].value == 1 and not testprocess: 
      subprocess.Popen(["/bin/myscript"]) 
      testprocess = Popen(["/bin/myscript1"]) 
      if pfd.input_pins[0].value == 0: 
       if testprocess: 
        testprocess.kill() 
        testprocess = None 
        subprocess.Popen(["/bin/mycript"]) 
      sleep(1) 
      if strftime('%H:%M') == '08:00': 
       sys.exit() 
+2

任何不使用系統功能的原因(例如cron,Task Schedular)在適當的時候運行腳本 - 這是他們的設計目的。 – AChampion

+0

你有沒有試過*沒有*自己? – jonrsharpe

+0

正確的像這樣? – user3804654

回答

0

剛剛得到的時間爲時間結構和計算從午夜的分鐘數,測試以分鐘爲單位的時間窗口:

lt = time.localtime() 
minutes = 60*lt.tm_hour + lt.tm_min 
if 60*6+30 <= minutes <= 60*8: 
    subprocess.Popen(["/bin/myscript"]) 
    testprocess = Popen(["/bin/myscript1"]) 
2

我會是這樣做的:

from time import strftime 
import sys 
while strftime('%H:%M') >= '18:00': 
    #Your code 
    if strftime('%H:%M') == '20:30': 
     sys.exit() 

您可以瞭解更多有關時間模塊的位置:https://docs.python.org/2/library/time.html

相關問題