Hub*_*bro 14 python windows levenshtein-distance
在搜索了几天之后,我准备放弃为Python Levenshtein库的 Python 2.7(Windows 64位)找到预编译的二进制文件,所以不是我自己尝试编译它.我安装了最新版本的MinGW32(版本0.5-beta-20120426-1)并将其设置为distutils中的默认编译器.
开始了:
C:\Users\tomas>pip install python-levenshtein Downloading/unpacking python-levenshtein Running setup.py egg_info for package python-levenshtein warning: no files found matching '*' under directory 'docs' warning: no previously-included files matching '*pyc' found anywhere in distribution warning: no previously-included files matching '.project' found anywhere in distribution warning: no previously-included files matching '.pydevproject' found anywhere in distribution Requirement already satisfied (use --upgrade to upgrade): setuptools in c:\python27\lib\site-packages\setuptools-0.6c11-py2.7.egg (from python-levenshtein) Installing collected packages: python-levenshtein Running setup.py install for python-levenshtein building 'Levenshtein' extension C:\MinGW\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IC:\Python27\include -IC:\Python27\PC -c Levenshtein.c -o build\temp.win-amd64-2.7\Release\levenshtein.o cc1.exe: error: unrecognized command line option '-mno-cygwin' error: command 'gcc' failed with exit status 1 Complete output from command C:\Python27\python.exe -c "import setuptools;__file__='c:\\users\\tomas\\appdata\\local\\temp\\pip-build\\python-levenshtein\\setup.py';exec(compile(open(__file__).rea d().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\tomas\appdata\local\temp\pip-7txyhp-record\install-record.txt --single-version-externally-managed: running install running build running build_ext building 'Levenshtein' extension C:\MinGW\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IC:\Python27\include -IC:\Python27\PC -c Levenshtein.c -o build\temp.win-amd64-2.7\Release\levenshtein.o cc1.exe: error: unrecognized command line option '-mno-cygwin' error: command 'gcc' failed with exit status 1
而现在我被卡住了.我假设该-mno-cygwin
选项已过时,不再适用于gcc
我的版本.如果是这种情况,我仍然不知道如何解决这个问题.
感谢任何人在此问题上提供的任何帮助.
编辑:
删除坏选项后,我手动运行编译行:
C:\MinGW\bin\gcc.exe -mdll -O -Wall -IC:\Python27\include -IC:\Python27\PC -c Levenshtein.c -o build\temp.win-amd64-2.7\Release\levenshtein.o
它成功地提供levenshtein.o build文件夹中,但是当我尝试运行python setup.py install
,然后它只是试图重新构建和失败.我在哪里可以删除-mno-cygwin
?我认为它在distutils的源头,但我找不到它.
Xod*_*777 17
对于像pip一样简单的64位安装,请尝试:http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-levenshtein
Hel*_*ene 16
如果您使用Anaconda,请尝试:
conda install -c conda-forge python-levenshtein
Run Code Online (Sandbox Code Playgroud)
从http://www.microsoft.com/en-us/download/details.aspx?id=6506下载vcsetup.exe (对不起,这个链接现在已经破了,它适用于VC++ 2008 ...)
运行
完成后打开你的command.exe
type :( easy_install python-Levenshtein
这假设你已经有setuptools)
坐下来让它安装
DONE
小智 7
如何在 Windows 10 64 位上安装 python-Levenshtein/fuzzywuzzy:
打开 DOS 窗口。
C:\Users\username> pip install fuzzywuzzy
C:\Users\username> pip install python-levenshtein
如果您遇到以下错误:
ERROR: Setup script exited with error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/down
Run Code Online (Sandbox Code Playgroud)
解决办法是:
从 python Levenshtein 轮子:https ://www.lfd.uci.edu/~gohlke/pythonlibs/#python-levenshtein,下载相关的 .whl:python_Levenshtein-0.12.0-cp37-cp37m-win_amd64.whl
在 Python37 目录下创建一个轮子目录(或任何你喜欢的名字): C:\Users\username\AppData\Local\Programs\Python\Python37\wheels
复制或移动 python_Levenshtein-0.12.0-cp37-cp37m-win_amd64.whl
文件从下载文件夹到轮子文件夹。
使用记事本在Python37目录下创建一个.bat文件,内容C:\Users\username\AppData\Local\Programs\Python\Python37\pip_install_python-levenshtein.bat
如下(假设 C:\Users\username\AppData\Local\Programs\Python\Python37\python.exe
是根目录Python.exe
):
cd C:\Users\sean3\AppData\Local\Programs\Python\Python37
pip install --use-wheel --no-index --find-links=wheels wheels/python_Levenshtein-0.12.0-cp37-cp37m-win_amd64.whl
Run Code Online (Sandbox Code Playgroud)运行pip_install_python-levenshtein.bat
:
C:\Users\firstname.lastname\AppData\Local\Programs\Python\Python37> pip_install_python-levenshtein.bat >> output1.txt
C:\Users\firstname.lastname> pip install fuzzywuzzy
Run Code Online (Sandbox Code Playgroud)
输出:成功安装 python-Levenshtein-0.12.0
我尝试了这里的所有方法,但对我的 Windows 10 没有任何效果。最后,我找到了这个库python-Levenshtein-wheels,它在 Windows 上是“可pip的”。
pip install python-Levenshtein-wheels
Run Code Online (Sandbox Code Playgroud)
在此之后只需像往常一样使用 Levenshtein
import Levenshtein
Levenshtein.distance('It works at last', 'Well it works at last')
Run Code Online (Sandbox Code Playgroud)
更新:
库Rapidfuzz提供了更多基于 Levenshtein 度量的比率。只是pip install rapidfuzz
。您可以根据您的用例使用它们。这是一个例子
from rapidfuzz import fuzz
fuzz.ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear")
# 90.90908813476562
fuzz.token_sort_ratio("fuzzy was a bear", "fuzzy fuzzy was a bear")
# 83.8709716796875
Run Code Online (Sandbox Code Playgroud)
第
归档时间: |
|
查看次数: |
26475 次 |
最近记录: |