Python-Levenshteinアーカイブをダウンロードし、Levenshtein dirを抽出しました。したがって、結果として、次のファイル構造になります。
Levenshtein
- __init__.py
- _levenshtein.c
- _levenshtein.h
- StringMatcher.py
myscript.py
そして次のmyscript.py
コンテンツ:
from Levenshtein import *
from warnings import warn
print Levenshtein.distance(string1, string2)
しかし、私は次のエラーを受け取ります-
Traceback (most recent call last):
File "myscript.py", line 1, in <module>
from Levenshtein import *
File "/path/to/myscript/Levenshtein/__init__.py", line 1, in <module>
from Levenshtein import _levenshtein
ImportError: cannot import name _levenshtein
ここで何が問題になっていますか?
python-Levenshtein パッケージをインストールするには:
pip install python-levenshtein
(これには pip が必要ですが、最新のPythonインストールにはこれが含まれます。)
build Levenshteinパッケージを使用していないようです。ダウンロードしたソースの解凍されていないディレクトリ(たとえば、_python-Levenshtein-0.12.0/
_)に移動し、次のようにビルドします。
_python setup.py build
_
すべてが順調に進んだ場合(おそらく、いくつかの警告は別として)、次のように_site-packages
_にインストールします
_Sudo python setup.py install
_
その後、パッケージを使用できることがわかりました。例えばIPython内から:
_In [1]: import Levenshtein
In [2]: string1 = 'dsfjksdjs'
In [3]: string2 = 'dsfiksjsd'
In [4]: print Levenshtein.distance(string1, string2)
3
_
((おそらく賢明ではない)ワイルドカードインポートでは、パッケージ名を前に付けずにdistance(string1, string2)
を使用する必要があることに注意してください)。
Windows、Mac、UNIXでのLevenshtein PIPパッケージのインストールと使用法
Sudoを使用してインストールするか、管理者として実行します
pip install python-levenshtein
以下を使用してコードにインポートします。
import Levenshtein as lev
あなたのコードで使うことができるより Levenstein functions のように
lev.distance('Levenshtein', 'Lenvinsten')
出力されます
4
。