Je travaille sur un projet pour que l'ordinateur réponde quand je lui donne des commandes. Je viens juste de commencer, mais quand je lance le code, il ne répond pas de la manière dont je m'attends à ce qu'il réagisse. Voici mon code:Vérifiez à l'intérieur que la boucle n'est pas exécutée
from pocketsphinx import LiveSpeech
import os
for phrase in LiveSpeech(): print(phrase)
if phrase == 'oh' :
os.system('espeak' ' "hi"')
J'ai reçu une erreur lors de l'exécution de ce code. Voici l'erreur:
Traceback (most recent call last):
File "xxt", line 4, in <module>
print(phrase)
File "/Library/Python/2.7/site-packages/pocketsphinx/__init__.py", line 93, in __str__
return self.hypothesis()
File "/Library/Python/2.7/site-packages/pocketsphinx/__init__.py", line 126, in hypothesis
hyp = self.hyp()
File "/Library/Python/2.7/site-packages/pocketsphinx/pocketsphinx.py", line 359, in hyp
return _pocketsphinx.Decoder_hyp(self)
File "/Library/Python/2.7/site-packages/pocketsphinx/__init__.py", line 225, in stop
raise StopIteration
StopIteration
Merci, Aditya
Ceci est peut-être trop simple, mais êtes-vous sûr que votre instruction 'if' est en cours d'exécution dans votre boucle' for'? Il semble que votre boucle 'for' imprime simplement chaque phrase sans vérifier si la valeur de la phrase est« oh ». Essayez d'ajouter une nouvelle ligne avant 'print' et de mettre cette ligne en retrait, ainsi que les deux lignes sous-jacentes à imbriquer sous la boucle' for'. – cole
@cole Merci, mais cela ne fonctionne pas – Aditya
Bonjour? N'importe qui? – Aditya