首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >:listen()缺少一个必需的位置参数:'self‘

:listen()缺少一个必需的位置参数:'self‘
EN

Stack Overflow用户
提问于 2019-04-20 03:46:43
回答 1查看 4.9K关注 0票数 1

我一直在PyCharm中开发人工智能,但我似乎遇到了一个错误,speech_recognition试图调用一种方法来获取音频输入:

代码语言:javascript
复制
/Users/waynedeng/Desktop/AI/venv/bin/python 
/Users/waynedeng/Desktop/AI/dawg_2.0.py
Listening...
Traceback (most recent call last):
  File "/Users/waynedeng/Desktop/AI/dawg_2.0.py", line 37, in <module>
    input = read_input()
  File "/Users/waynedeng/Desktop/AI/dawg_2.0.py", line 20, in read_input
    audio = speech.listen(source=source, timeout=10, phrase_time_limit=5)
TypeError: listen() missing 1 required positional argument: 'self'

Process finished with exit code 1

我已经尝试谷歌我的错误,但没有任何一个解决方案帮助我的情况。这是我的代码:

代码语言:javascript
复制
import speech_recognition as sr
import os
from playsound import playsound
import webbrowser
import random

speech = sr.Recognizer
speech.energy_threshold = 4000

greeting_dictionary = {'sup' : 'whats good','ay' : 'wassup'}

def play_sound(mp3_list):
    mp3 = random.choice(mp3_list)
    play_sound(mp3)

def read_input():
    voice_text = ''
    print('Listening...')
    with sr.Microphone() as source:
        audio = speech.listen(source=source, timeout=10, phrase_time_limit=5) #The error is here
    try:
        voice_text = speech.recognize_google(audio)
    except sr.UnknownValueError:
        pass
    except sr.RequestError as e:
        print('Network error')
    except sr.WaitTimeoutError:
        pass
    return voice_text

if __name__ == '__main__':

    playsound('mp3/dawg/greet.mp3')

    while True:

        input = read_input()

        print('You: '.format(input))

        if 'hello' in input:
            continue
        elif 'open' in input:
            os.system('explorer ~/Desktop {}'.format(input.replace('Open ', '')))
        elif 'bye' in input:
            exit()

我已经试着解决这个错误一个星期了,但我似乎无法纠正这个错误

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-20 04:00:06

而不是这个

代码语言:javascript
复制
speech = sr.Recognizer

尝尝这个

代码语言:javascript
复制
speech = sr.Recognizer()
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55770064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档