当我尝试在 pydub 中打开一个 wave 文件时,它找不到该文件。为什么是这样?

When I try to open a wave file in pydub, it can't find the file. Why is this?

这是终端的样子:

>>> from pydub import AudioSegment
>>> song = AudioSegment.from_wav("E:\sounds\ahh.wav")

Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    song = AudioSegment.from_wav("E:\sounds\ahh.wav")
  File "C:\Python27\lib\pydub\audio_segment.py", line 534, in from_wav
    return cls.from_file(file, 'wav', parameters)
  File "C:\Python27\lib\pydub\audio_segment.py", line 505, in from_file
    p = subprocess.Popen(conversion_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
  File "C:\Python27\lib\subprocess.py", line 710, in __init__
    errread, errwrite)
  File "C:\Python27\lib\subprocess.py", line 958, in _execute_child
    startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

现在,这个文件肯定存在于我的计算机上,据我所知我正确使用了反斜杠。为什么 Python 找不到它?

仔细查看该回溯 - 未找到的不是您的 WAV 文件,而是未找到的可执行程序(由 conversion_command 引用)。根据 Pydub 文档,WAV 文件不需要外部命令,因此我怀疑您拥有的文件实际上不是有效的 WAV。您可以尝试按照 Pydub 文档中的说明安装其可选依赖项(libav、ffmpeg),以防该文件是不同格式的有效文件。