2016-02-23 2 views
-2

J'utilise Speach Recognition de python et mon code me donne un AttributeError:AttributeError: objet 'module' n'a pas d'attribut 'Recognizer'

import os 
import pyaudio 
import speech_recognition as sr 

def excel(): 
     os.system("start excel.exe") 

def internet(): 
     os.system("start chrome.exe") 

def media(): 
     os.system("start wmplayer.exe") 

def mainfunction(source): 
    audio = r.listen(source) 
    user = r.recognize_google(audio) 
    print(user) 
    if user == "Excel": 
     excel() 
    elif user == "Internet": 
     internet() 
    elif user == "music": 
     media() 

if __name__ == "__main__": 
    r = sr.Recognizer() #this is the line that fails 
    with sr.Microphone() as source: 
     while 1: 
      mainfunction(source) 

le message d'erreur est:

AttributeError: 'module' object has no attribute 'Recognizer' 
(test-dev-pro)➜ ~ python speech_recognition.py 
Traceback (most recent call last): 
    File "speech_recognition.py", line 26, in <module> 
    r = sr.Recognizer() 
AttributeError: 'module' object has no attribute 'Recognizer' 

mais Recognizer est utilisé dans tous les exemples que j'ai examinés, donc je ne comprends pas pourquoi je reçois cette erreur.

+0

Montrez votre code, Ce que vous essayez exactement de faire – AlokThakur

+0

Et formater votre code comme expliqué dans la vue d'édition. Vous pouvez modifier votre question en cliquant sur le lien ** modifier ** ci-dessous votre question. Lisez également le [tour] (http://stackoverflow.com/tour). –

+0

J'essaie de faire un simple programme python de reconnaissance vocale. Je suis nouveau à python alors s'il vous plaît considérer mes erreurs. Merci d'avance. –

Répondre

2

Bien que ce soit pas un doublon, vous avez la même question que cette personne: Python "import random" Error

en nommant votre fichier speach_recognition vous finissez par importer votre propre fichier au lieu du fichier de bibliothèque. Pour corriger cela, il suffit de changer le nom de votre fichier et vous serez prêt à partir! :)

Editer: assurez-vous de consulter les commentaires sur cette question ainsi que des informations sur le nettoyage du fichier .pyc.

+0

J'ai renommé mon fichier en tant que test123.py , même si je reçois la même erreur. S'il vous plaît aider quelqu'un. –

+0

essayez de déplacer dans un nouveau dossier et réexécuter, il peut être un fichier '.pyc' dans le dossier ou un sous-dossier' __pycache__' –

+0

vous souhaitez rechercher et supprimer 'speach_recognition.pyc' situé dans le même dossier ou un sous-dossier appelé '__pycache__'. –