嘿傢伙我編寫的東西似乎對我來說真的很奇怪,而且我無法從邏輯上理解如何實現它,而且我覺得如果我這樣做會成爲cpu融化 - 所以我想我會問真正知道的人。Python while while循環來檢查文件是否存在
我想要做的是檢查一個文件是否存在,如果沒有,執行一個動作,然後再次檢查,直到文件存在,然後代碼傳遞。我試過谷歌搜索沒有用。感謝任何人的幫助!
嘿傢伙我編寫的東西似乎對我來說真的很奇怪,而且我無法從邏輯上理解如何實現它,而且我覺得如果我這樣做會成爲cpu融化 - 所以我想我會問真正知道的人。Python while while循環來檢查文件是否存在
我想要做的是檢查一個文件是否存在,如果沒有,執行一個動作,然後再次檢查,直到文件存在,然後代碼傳遞。我試過谷歌搜索沒有用。感謝任何人的幫助!
爲簡單起見,我將實現一個小輪詢功能,具有安全超時:
def open_file(path_to_file, attempts=0, timeout=5, sleep_int=5):
if attempts < timeout and os.path.exists(path_to_file) and os.path.isfile(path_to_file):
try:
file = open(path_to_file)
return file
except:
# perform an action
sleep(sleep_int)
open_file(path_to_file, attempts + 1)
我也考慮使用Python內置polling,因爲這將跟蹤/報告I/O事件爲您的文件描述符
請發佈您的代碼到目前爲止 – georg
執行它,因爲你認爲。你可能會感到驚訝...... –
^^回答了我的問題! :) –