2014-02-26 84 views
1

我在調制解調器工作時,會更改設置,並重啓設備(在腳本中這一切都完成的)。所以,我需要來ping系統,等到設備了。延遲腳本,直到它執行ping到IP不睡覺

是我的嘗試是

cur = time.time() 
delay = cur + 300 
while delay > cur: 
    t = os.system('ping '+ip) 
    if t: 
     something here 
    else: 
     something else here 

是否有任何其他方式做到這一點?基本的問題是,如何可以等待一些超時,直到一個設備了!

注:我在尋找一個解決方案,而time.sleep

回答

1

嘗試使用time.sleep()像這樣:

import time 

delay = 1 # this will delay for 1 seconds 
time.sleep(delay) 
+0

我正在尋找一種沒有睡眠的方法。 – rajpython

0

,如果你想避免使用睡眠,你可以只改變而循環繼續下去,直到你得到你的IP

waiting =True 
while waiting: 
    counter =0 
    t = os.system('ping '+ip) 
    if t: 
     waiting=False 
     do something 
    else: 
     counter +=1 
     if counter == 10000: # this will prevent an never ending loop, set to the number of tries you think it will require 
      waiting = False