嘿家伙我编写的东西似乎对我来说真的很奇怪,而且我无法从逻辑上理解如何实现它,而且我觉得如果我这样做会成为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
执行它,因为你认为。你可能会感到惊讶...... –
^^回答了我的问题! :) –