all Python 3Linux · macOSosfunction
os.spawnlpe
os — running programs (spawn)
Like spawnlp, but with an explicit environment dict.
Syntax
os.spawnlpe(...)
It combines PATH lookup with a new environment and is unavailable on Windows. The last argument is an environment dict that replaces the current one entirely. Before writing new code with spawn*, look at subprocess.run: it does the same portably and with error checking.
Examples
import os
env = {**os.environ, 'LANG': 'C'} # у e-форм окружение задаётся явно и передаётся последним позиционным аргументом
print(env['LANG']) # → ? C
code = os.spawnlpe(os.P_WAIT, 'echo', 'echo', 'hi', env) # → ? только Unix: печатает hi, P_WAIT ждёт конца, code == 0
pid = os.spawnlpe(os.P_NOWAIT, 'sleep', 'sleep', '5', env) # → ? только Unix: не ждёт, возвращает идентификатор процесса, например 12345
print(('echo', 'hi')[0]) # → ? echo: в l-форме имя программы пишется дважды — как file и как argv[0]
See also
Common errors
Open in the full glossarydocs.python.orgReport an inaccuracy