Вызов исполняемого файла fortran из python с использованием вызова подпроцесса - PullRequest
0 голосов
/ 23 января 2019

Я пытаюсь вызвать исполняемый файл Фортрана из Python. Я использую вызов подпроцесса. Однако существует проблема с использованием исполняемого файла Fortran. Аргументы принимаются только в определенном порядке.

./analyze --arg1 a --arg2 b

выполняется с ошибкой, но

./analyze --arg1 b --arg2 a

выполняется правильно

Поскольку я не написал код на Фортране, изменить его невозможно. Я попытался написать скрипт на python, который пытается сделать это так

try:
  subprocess.call(["/path/to/dir/analyze","--arg1",a,"--arg2",b])
except:
  subprocess.call(["/path/to/dir/analyze","--arg1",b,"--arg2",a])

Однако, если первое выполнение двоичного файла Фортрана приводит к ошибке, он выходит из оболочки и не возвращает управление обратно в python. Есть ли лучший способ добиться этого?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...