Выполнение программы командной строки (сценарий Abaqus- python) из сценария python - PullRequest
0 голосов
/ 11 июля 2020

Я пытаюсь запустить файл сценария Abaqus- python из другого сценария python, выполняемого в Spyder (python 3.7, windows 10).

Если я запустил следующую команду в CMD abaqus cae -noGUI model.py код выполняется, как ожидалось. Однако, если я попытаюсь запустить cp = subprocess.run('abaqus cae -noGUI model.py',shell=True), я ничего не получу. Ниже показано, что возвращается в cp.

введите описание изображения здесь

Примечания:

  1. Файл Abaqus- python, который я пытаюсь запустить, находится в той же папке, что и сценарий python, который у меня есть.
  2. Я пробовал различные sp.call, sp.run, os.systems в разных строковых и списковых форматах.
  3. «C: \ Abaqus \ Commands» и «C: \ SIMULIA \ Commands "оба находятся в моей переменной среды PATH.
  4. Я думаю, что вызов -no GUI важен для решения проблемы. Я не могу найти других на SO с этой проблемой.

1 Ответ

0 голосов
/ 12 июля 2020

После изрядного количества копаний я думаю, что проблема в том, что PATH для моей python установки выполнен с помощью Anaconda, поэтому у меня есть другой путь по сравнению с CMD. Я исправил это, добавив к команде полное местоположение Abaqus. См. Ниже.

subprocess.call (r 'C: \ SIMULIA \ Commands \ abaqus job = Job-1 ask_delete = OFF interactive', shell = True)

...