2016-12-19 12 views
0
import pocketsphinx 
for phrase in pocketsphinx.LiveSpeech():print(phrase) 

これまでにない変わったことがありました。このコードはうまくいきました。それから私はそれをカットし、同じプロジェクトの別のpythonファイルに貼り付けました.AttributeError:モジュール 'pocketsphinx'には 'LiveSpeech'という属性はありません。 pocketsphinxは私の外部ライブラリにあり、私のideはそれを認識しますが、今ではpocketsphinxの自動補完オプションはありません(推奨が必要です)。これは奇妙です。私が切り取って古いファイルに戻っても、今のところそれは動作しません。 ??? Hmm ...理由インポートされたモデルの属性にアクセスできません。

+1

あなたのプロジェクトディレクトリに 'pocketsphinx.py'という名前のファイルがありますか?インポート後に 'print(pocketshpinx)'を追加して、インポート先を確認してください。 – mata

+0

はい私はしました。テストするファイルに名前を付けました。ありがとう男 – bugs

+0

私はあなたをマークすることができるはずです。どのように私は素晴らしい仕事をしますか? – bugs

答えて

1

この種のエラーは、プロジェクトディレクトリに、インポートする名前と同じ名前のモジュールがある場合によく発生します。このファイルは、sys.pathをトラバースしたときに先に見つかるため、インポートしようとしているライブラリをシャドウします。

この場合、おそらくあなたのプロジェクトディレクトリ内にファイルpocketsphinx.pyがあります。あなたが何かに名前を変更する場合、それは動作するはずです。

関連する問題