2017-09-04 16 views
0

개별 파일에 대해 명령을 실행하면 작동합니다. 그러나 루프 내에서 사용할 때 작동하지 않습니다. 무엇이 문제 일 수 있습니까? 서브 프로세스 가져 오기 호출 수입 운영 체제에서 , SYS디렉토리의 모든 파일에 대해 Python에 exe 전달

rootdir = r'C:\\Users\\X\\Desktop\\hump' 

for root, dirs, files in os.walk(rootdir): 
    for file in files: 
     if file.endswith(".ply"):    
      nf = file.replace('.ply', '.txt') 
      os.system("C:\\Users\\X\\Desktop\\fftw-3.3.5 dll64\\ShapeDescriptor.exe --in file --out nf") 
+1

잠깐 동안 서브 프로세스를 잊어 버리고 파일 이름을 포함하는 문자열을 작성하려는 경우 수행 할 작업을 생각해보십시오. –

+0

file_name = os.path.join (루트, 파일)과 같은 것을 추가 한 다음 아래 답변과 병합했습니다. – edyvedy13

답변

1

시스템 호출에 filenf의 값을 전달합니다. 이것은 당신이 찾고있는 것일 수 있습니다.

os.system("C:\\Users\\X\\Desktop\\fftw-3.3.5 dll64\\ShapeDescriptor.exe --in {0} --out {1}".format(file,nf)) 
+0

마지막 줄을 변경했지만 여전히 결과를 얻을 수 없습니다. – edyvedy13

+0

공백이 있기 때문에 문제를 이해합니다. 입력 파일 ... – edyvedy13