가능한 복제를하는 프로그램을 실행하는 방법 : 나는 파이썬에서 명령 줄에서 프로그램 (MP3gain.exe)를 호출하는 것을 시도하고있다
How do I execute a program from python? os.system fails due to spaces in path파이썬에서 명령 줄에서
. 내 문제는 파이썬 명령 줄에 보내는 명령 주위에 [ ''] 넣고 dos 함께 명령을 해석 할 수없는 것으로 보입니다. 여기 내 코드가있다.
import os
import subprocess
import Editor
class normalize():
def __init__(self, file):
self.FileName = file
def work(self):
command = [ 'mp3gain /r /c' + self.FileName]
subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
if __name__ == "__main__":
test = normalize("filename.mp3")
test.work()
이 경우 도움이 될 경우 exit 코드를 인쇄하면 -2가됩니다. 어떤 도움을 주셔서 감사합니다.
command = ['mp3gain', '/r', '/c', self.FileName]
당신이 무엇을 의미합니까는'파이썬은 command' 주위 [ '를'] 박았? 실제 스네이크에 코드를 입력하지 않아도됩니다. 단지 언어 이름 일뿐입니다. –
커맨드 라인이'mp3gain/r/c filename.mp3'이어야한다면'command = [ 'mp3gain', '/ r', '/ c', self.FileName]'을 해 보셨습니까? (또한 mp3gain은 인터프리터의 작업 디렉토리에서 호출 가능해야합니다. 그렇지 않으면 전체 실행 파일의 경로를 호출해야 할 수도 있습니다) –