2016-09-08 2 views
1

입력 파일을 업데이트하는 알고리즘이 필요합니다. 나는 .py 파일을 수정하고 abaqus에서 실행할 수 있다는 것을 알았습니다. os.system을 ('ABAQUS의 CAE 스크립트 = C : interacting python and abaqus

그러나 때문에 공정의 자동화 해주는 필요가

, 나는 스크립트를 열고 나는이 시도

ABAQUS에서 실행하기 위해 노력하고있어 \ 사용자 사무엘 \ 누군가가 나를 도울 수 있다면 \ ABAQUS-1 \ script1.py ')는

이는 cmd를 도스 창에서 작동하지만 파이썬에서 작동하지 않습니다
import os 
import subprocess 


HERE = os.path.dirname(os.path.abspath(__file__)) 


def create_script(name): 
    path = os.path.join(HERE, 'abaqus-1', name) 
    return path 


name = 'script1.py' 
script_path = create_script(name) 
print (script_path) 


args = ['abaqus', 'cae', 'script={0}'.format(script_path)] 
print (args) 
p = subprocess.Popen(args) # Success! 
print(p.communicate()) 

, 나는 감사하겠습니다 그것을

오류

['abaqus', 'cae', 'script=C:\\Users\\Samuel\\abaqus-1\\script1.py'] 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "C:\Users\Samuel\Anaconda3\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 714, in runfile 
    execfile(filename, namespace) 
    File "C:\Users\Samuel\Anaconda3\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 89, in execfile 
    exec(compile(f.read(), filename, 'exec'), namespace) 
    File "C:/Users/Samuel/prueba control.py", line 28, in <module> 
    p = subprocess.Popen(args) # Success! 
    File "C:\Users\Samuel\Anaconda3\lib\subprocess.py", line 947, in __init__ 
    restore_signals, start_new_session) 
    File "C:\Users\Samuel\Anaconda3\lib\subprocess.py", line 1224, in _execute_child 
    startupinfo) 
FileNotFoundError: [WinError 2] The system cannot find the file specified 

os.system('abaqus cae noGUI=C:\\Users\\Samuel\\abaqus-1\\script1.py') 

내가 아닙니다, 당신은 명령 귀하의 경우 그래서

abaqus cae noGUI=nameOfScript.py 

를 사용 아바쿠스에서 파이썬 스크립트를 실행해야

os.system('abaqus cae script=C:\Users\Samuel\abaqus-1\script1.py') 

-

+1

먼저 파이썬에서 작동하지 않는 이유를 게시해야합니다. "작동하지 않습니다"는 오류에 대한 설명이 잘못되었습니다. – grochmal

+0

아마 하위 프로세스를보아야 할 수도 있습니다. https://docs.python.org/3.5/library/subprocess.html#module-subprocess – Phidelux

+0

'noGUI = script.py'를 시도해 볼 수도 있지만 실제로 "나던 일"도 마찬가지입니다. 막연한 – agentp

답변

1

아마이 문장은 잘못 나는 '파이썬 스크립트가있는 동일한 폴더에서 대개 abaqus를 열 때'\ '에 대해 확신합니다.