Quale comando in python può essere utilizzato per eseguire un altro programma python? Non dovrebbe attendere il termine del processo figlio, ma continuare. Inoltre, non ha bisogno di ricordare i suoi processi figli.Come eseguire un altro programma python senza ostacolare l'originale?
9
A
risposta
11
uso subprocess
import subprocess
#code
prog = subprocess.Popen(['python', filename, args])
#more code
3
Se l'altro programma di pitone è importabile, e la funzionalità necessaria può essere chiamato tramite una funzione, allora è preferibile utilizzare multiprocessing invece di subprocess
, dal momento che gli argomenti possono essere passati come oggetti Python, anziché tramite stringhe:
import somescript
import multiprocessing as mp
proc = mp.Process(target=somescript.main, args=...)
proc.start()