pygsr TypeError:' float' object不能解释为整数

时间:2016-05-09 19:35:25

标签: python python-3.x

我试图在python 3.4中运行此代码:

from pygsr import Pygsr
speech = Pygsr()
# duration in seconds
speech.record(3)
# select the language
phrase, complete_response = speech.speech_to_text('en_UK')

print(phrase)`

但我收到了错误

File "/usr/local/lib/python3.4/dist-packages/pygsr/__init__.py", line 33, in record for i in range(0, self.rate / self.chunk * time): TypeError: 'float' object cannot be interpreted as an integer

为什么有任何想法?除了更改“es_ES”之外,我还没有对代码进行修改。到' en_UK'来自pygsr PyPi网站。

1 个答案:

答案 0 :(得分:3)

这是因为pysgr是用Python 2.7( see source code )编写的,其中除以整数为你提供了一个整数。在你使用的Python 3.4中,除了整数可以返回一个浮点数(PEP 238 - Changing the Division Operator ),这会导致你的错误,因为range()需要整数参数。