반응형
외부 프로그램을 실행해야하는 Python 스크립트가 있지만 어떤 이유로 실패합니다.
다음 스크립트가있는 경우 :
import os;
os.system("C:\\Temp\\a b c\\Notepad.exe");
raw_input();
그런 다음 다음 오류와 함께 실패합니다.
'C : \ Temp \ a'는 내부 또는 외부 명령, 작동 가능한 프로그램 또는 배치 파일로 인식되지 않습니다.
따옴표로 프로그램을 이스케이프하면 :
import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe"');
raw_input();
그런 다음 작동합니다. 그러나 매개 변수를 추가하면 다시 작동하지 않습니다.
import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe" "C:\\test.txt"');
raw_input();
프로그램을 실행하고 완료 될 때까지 기다리는 올바른 방법은 무엇입니까? 작업을 수행하고 종료하는 시각적 프로그램이므로 출력을 읽을 필요가 없지만 완료 될 때까지 기다려야합니다.
또한 프로그램을 간격이없는 경로로 이동하는 것도 옵션이 아닙니다.
이것은 작동하지 않습니다.
import os;
os.system("'C:\\Temp\\a b c\\Notepad.exe'");
raw_input();
스왑 된 작은 따옴표 / 큰 따옴표에 유의하십시오.
여기서 메모장에 대한 매개 변수가 있거나없는 경우 오류 메시지와 함께 실패합니다.
파일 이름, 디렉터리 이름 또는 볼륨 레이블 구문이 잘못되었습니다.
해결 방법
import subprocess
subprocess.call(['C:\\Temp\\a b c\\Notepad.exe', 'C:\\test.txt'])
참조 페이지 https://stackoverflow.com/questions/204017
반응형
'파이썬' 카테고리의 다른 글
파이썬 Python 라이브러리 경로에 폴더 추가 (Windows) (0) | 2020.12.29 |
---|---|
파이썬 Python 2.7에서는 hashlib를 가져 오지만 2.6에서는 가져 오지 않는 오류 (0) | 2020.12.29 |
파이썬 NoneType이 작동하지 않는 Python 검사 (0) | 2020.12.28 |
파이썬 Python에서 전역 변수를 변경하는 방법 (0) | 2020.12.28 |
파이썬 Pandas 데이터 프레임을 사용하여 지연된 데이터 구조를 만드는 방법 (0) | 2020.12.28 |
댓글