2017-03-28 3 views
0

안녕하세요, 다른 python 스크립트에서 python 스크립트를 실행하려고하고 있는데 os.system()을 사용하여이 작업을 수행하려고합니다. 문제는이 스크립트가 json to csv 변환기이며 두 개의 인수 (json 파일의 입력 디렉토리와 csv 파일의 출력 디렉토리)이며 --include 및 - 우리는 csv 파일에서 전송하려는 json의 데이터와 관련이 있습니다. 그래서 기본적으로 내가 터미널에서 실행 (그리고 거기 일) 때는 다음과 같습니다 : 내부os.system 인수와 매개 변수가있는 python 스크립트를 실행하십시오.

python file/tmp/python/json_to_csv.py -i results/2.json -o results/csv_folder/2.csv --include metadata.audio_properties.* metadata.tags.musicbrainz_recordingid.0 lowlevel.* rhythm.* tonal.* --ignore *.min *.min.* *.max *.max.* *.dvar *.dvar2 *.dvar.* *.dvar2.* *.dmean *.dmean2 *.dmean.* *.dmean2.* *.cov.* *.icov.* rhythm.beats_position.* --add-filename 

나는이 같은 시도 ipython :

os.system(“essentia/src/examples/python/json_to_csv.py -i results/24.mp3.json -o results/csv_folder/24.csv --include metadata.audio_properties.* metadata.tags.musicbrainz_recordingid.0 lowlevel.* rhythm.* tonal.* --ignore *.min *.min.* *.max *.max.* *.dvar *.dvar2 *.dvar.* *.dvar2.* *.dmean *.dmean2 *.dmean.* *.dmean2.* *.cov.* *.icov.* rhythm.beats_position.* --add-filename”) 

나이 :

os.system(CONVERTOR + ' "' + jsons + '" "' + csvs + '"') 

하지만 아무 효과가 없습니다. 누구나 이것이 어떻게 작동하는지 알 수 있습니까? . 사전

+0

곱슬 따옴표 ' "''으로 변경"'다시 시도 문제가 될 것 같지 않습니다 – wim

+0

없음은 가져 오기 명령을 찾을 수 없습니다와 같은 오류를 제공합니다 –

답변

0

에서 덕분에 오른쪽 일이 결국였다!

subprocess.call(["json_to_csv.py", "-i", "json_file", "-o", "csv_file", "--include", "metadata.audio_properties.* metadata.tags.musicbrainz_recordingid.0 lowlevel.* rhythm.* tonal.*", "--ignore", "*.min *.min.* *.max *.max.* *.dvar *.dvar2 *.dvar.* *.dvar2.* *.dmean *.dmean2 *.dmean.* *.dmean2.* *.cov.* *.icov.* rhythm.beats_position.*", "--add-filename"])