Если работает, но иначе не будет цикл будет лучшим вариантом?(Python) - PullRequest
0 голосов
/ 09 марта 2019

Я перебрал много вопросов и перепробовал много предложений, но я просто не могу заставить что-то простое работать. По сути, я хотел бы запустить мой сценарий в цикле. Если файл присутствует, распечатайте и повторите. Если файла нет, спите в течение 19 минут, а затем снова запустите скрипт. Я могу заставить часть «если» работать нормально, когда файл присутствует. Когда файла нет, ничего не происходит. Я также полностью потерян, чтобы сделать это петлей.

import os, shutil
import glob
import time

source = 'C:/File Location/Files'

files = os.listdir(source)

files = glob.iglob(os.path.join(' C:/File Location/Files ', "*.pdf"))


for file in files:
    if os.path.isfile(file):
        time.sleep(30)
        print ("Success")
    else:
        time.sleep(1140)    

1 Ответ

1 голос
/ 09 марта 2019

Самый простой способ сделать то, что я думаю, вы хотите сделать , это использовать schedule . Вы можете использовать это так:

schedule.every(60*19).seconds.do(<your file function>)

while True:
   schedule.run_pending()
   time.sleep(1)

Это будет запускать ваши файлы каждые 19 минут.

Если вы действительно хотите печатать файл непрерывно, за исключением случаев, когда он отсутствует, и в этом случае он спит в течение 19 минут, вы можете использовать:

while True:
     if os.path.isfile(file):
         time.sleep(30)
         print("Succes")
     else:
         time.sleep(19*60)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...