未找到 python 脚本中的命令

Commands from within python script not found

我正在使用 sox 命令行工具转换 python 脚本中的文件。我可以从命令提示符 window 手动转换文件,但是当我从相同的工作目录执行我的代码时,返回错误:

'sox' is not recognized as an internal or external command, operable program or batch file.

sox 是我的道路。但是没有被发现。 python 运行 是否有可能在 subprocess.call 方法中为该方法更改当前工作目录,并且 运行 位于我的某些路径变量不存在的位置被发现了吗?

这就是我 运行我的代码没有找到 "sox"

的方式
    print("Enter a name for the .wav output file")
    filename = raw_input()
    + " " + filename + ".wav"
    COMMAND = "sox " + fileOut + " " + filename + ".wav"
    subprocess.call(COMMAND, shell = True)

如果我发出命令,它会正确执行...

COMMAND = "C:\\"Program Files (x86)\"\sox-14-4-2\sox.exe " + fileOut + " " + filename + ".wav"

为什么在此 python 文件中找不到 sox?

放下你的 shell=True 并制作 COMMAND 列表:

COMMAND = ["sox", fileOut, filename + ".wav"]
subprocess.call(COMMAND)