2017-09-22 15 views
0

langdetectパッケージで文字列の言語を検出しようとしています。しかし、それは動作しません。pythonでlangdetectパッケージを使用できません

from langdetect import detect 

word_string = "Books are for reading" 
print(detect(word_string)) 

私は*

from langdetect import * 

word_string = "Books are for reading" 
print(detect(word_string)) 

で検出置き換えるとき、私はエラーを取得エラーImportError: cannot import name detect

を得る上で、私は、コードを使用する場合:NameError: name 'detect' is not defined

だから私の質問は、私が解決することができる方法でありますこれらの問題 ?

問題は、私のlangdetectパッケージとpythonファイルが同じ名前であるということでした....あなたの答えをありがとう。

+0

'輸入langdetect'、その後' langdetect.detect() 'の出力は何ですか? – GPhilo

+0

出力は「はAttributeError:モジュールのlangdetectは ' 『検出』は属性を持っていない」である私は、チュートリアルとしてhttps://github.com/Mimino666/langdetect#basic-usageを使用 を。 – Extria

+0

それから私は、私は、detect_langsと同じ問題を試してみました – GPhilo

答えて

1

これはおそらく存在しないため、インポートできません。名前が正しいかどうかを確認してください。ここに他の質問があるので、あなたはdetect_langsを意味すると思います。

+0

...あなたの 'detect'関数はその名前で存在していないと思います。 – Extria

+0

私はちょうどそれを自分自身をインストールし、あなたはので、多分、インストールに問題があります使用して、正しいです。どのバージョンのpythonとパッケージをインストールしましたか?あなたはいつでもそれをアンインストールして再インストールすることができます – Yorian

1

あなたのエラーは、Pythonインタプリタがにインポートしようとしているmoduleが見つかりませんでした。

は、あなたのコードに

import os 
sys.path.append('absolute_path to your module.py file') 

を追加し、再試行してください。 もう1つの方法は、モジュールを含むフォルダに環境変数であるPYTHONPATHを追加することです。

import langdetectを試してみてください。そのパスは、sys.path変数にあります。このコマンドが成功すると、モジュールを正常にロードしたことを意味します。今度は、langdetect.detectという名前の検出機能は、langdetect名前空間に存在するため、対処する必要があります。それが見つからなければ、そこにはありません。

関連する問題