Я пытаюсь вызвать внешний скрипт perl в моем скрипте python. Я использовал subprocess.Popen()
. Если запустить его, какspace in python subprocess.Popen() arguments
subprocess.Popen([mybinary, '-arg1 argv1', '-arg2 argv2'])
аргументы не передаются в mybinary
. Но если я отделить аргументы от значений, то он работает правильно:
subprocess.Popen([mybinary, '-arg1', 'argv1', '-arg2', 'argv2'])
Почему это так? args должна быть строкой или списком. Если я конкатенирую mybinary
, и аргументы в одну строку для Popen()
, Popen()
тоже не работают. Я подозреваю, что это относится к ключевым словам (** kwargs). Но скрипт, вызванный, является внешним. Я не вижу причины.