Python Glossary Русский

all Python 3osfunction

os.execvpe

os — running programs (exec)

Like execvp, but with an explicit environment dict.

Syntax

os.execvpe(...)

It looks the program up via PATH from the environment you pass, not the current one — so an environment without PATH may unexpectedly fail to find the program. The environment is replaced entirely. Arguments go as a list, the first being the program name.

Examples

import os
env = {'PATH': '/usr/bin:/bin', 'LC_ALL': 'C'}   # PATH для поиска берётся из ЭТОГО словаря, а не из os.environ
print(sorted(env))   # → ['LC_ALL', 'PATH']
print(os.execvpe('нет-такой-программы', ['нет-такой-программы'], env))   # → FileNotFoundError: в PATH из env ничего не нашлось
import os
# os.execvpe('env', ['env'], env)   # только Unix: env найдётся в /usr/bin и напечатает LC_ALL и PATH; если в словаре нет PATH, поиск идёт по os.defpath

See also

Common errors

Open in the full glossarydocs.python.orgReport an inaccuracy