Я пишу (несколько) модульное приложение на Python 3, и я хотел бы запускать из него произвольные программы, указанная программа указывается во время выполнения и не обязательно является скриптом Python.
Поэтому я используюнапример,
subprocess.call([spam, "-i", eggs, "-o", ham])
Если spam
- это сценарий Python с шебангом на python3
и правами на выполнение, я получу
OSError: [Errno 8] Exec format error
, если я
subprocess.call(["python3", spam, "-i", eggs, "-o", ham])
работает нормально.
Знаете почему?Как я могу запустить spam
без указания python3
?