Я использую Python 3.4.2 для Windows. В script1.py я делаю это:Python subprocess.popen() без ожидания
myProc = subprocess.Popen([sys.executable, "script2.py", "argument"])
myProc.communicate()
это работает и вызывает script2.py. Проблема в том, что в script2.py существует бесконечный цикл (должен быть), и script1.py ждет завершения скрипта2.py. Как я могу сказать script1.py просто вызвать script2.py и не дождаться завершения процесса?
Помогает ли это? http://stackoverflow.com/questions/13243807/popen-waiting-for-child-process-even-when-the-immediate-child-has-terminated – nekomatic
Несвязанный: в качестве более гибкой альтернативы вы можете импортировать скрипт как вместо этого используется модуль Python (используйте «if __name__ ==» __ main __ »« защищайте его, чтобы не запускать код при импорте »), и вызывайте функции напрямую или используя' threading', 'multiprocessing',' concurrent.futures', если это необходимо. – jfs