读取wav fi时属性错误

2024-09-28 21:51:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python的新手,我尝试构建一个程序,它知道如何解码和编码用于拨打电话的双音多频(DTMF)信号。 目前,编码部分工作良好,但由于某些原因,编码不起作用,我得到以下异常

 Traceback (most recent call last):
      File "C:\Users\matant\workspace\dialer2\dialer.py", line 239, in <module>
        x = d.decoder()
      File "C:\Users\matant\workspace\dialer2\dialer.py", line 218, in decoder
        data = self.read_wav()
      File "C:\Users\matant\workspace\dialer2\dialer.py", line 201, in read_wav
        n = fin.getnframes()
    AttributeError: 'file' object has no attribute 'getnframes'

如你所见,我在文件中写入帧,因此我不明白为什么会发生这种情况: 这是我的代码:

^{pr2}$

Tags: inpy编码readlineusersworkspacefile
2条回答
    fin = open('testNum.wav','r')

看起来您使用的是内置的open函数,而不是来自wave模块的函数。尝试:

^{pr2}$

您必须使用可以从wave.open返回的wave read object操作,该方法将返回带有代码试图访问的属性的文件。在

另外,您还添加了新的from wave import open语句,这样可以覆盖默认的open方法,但最好将wave open方法思想点命名为wave.open。在

相关问题 更多 >