0

我已经为 python3.4 中的调查条目构建了一个 tkinter GUI,它使用了许多包。然后我需要将它编译成一个可执行文件,这样我就可以把它放在同事的机器上(我们都在 windows7 平台上)我已经将 setup.py 构建成如下所示:

from cx_Freeze import setup, Executable
import sys

base = None
if sys.platform == "win32":
    base = "Win32GUI"

setup(
        name='Survey Entry',
        version='3.5',
        license='MIT',
        description='GUI For entering survey data',
        executables= [Executable("Survey Entry.py", base=base)],
        options={"build_exe":{"packages":['tkinter','cx_Oracle','datetime','time','enter_survey','lookup',
                                          'queryfuncs','login','gui', 'datetime', 'add_respondent', 'possible_matches']}}
)

这对于大量版本来说都非常有效。但后来我添加了一个使用fuzzywuzzy 来比较字符串的功能。当我包含它并添加fuzzywuzzy到选项字典中的包列表并编译它时,当我尝试运行以结尾的 exe 时出现大错误ImportError: No module named 'Levenshtein'

我不明白,因为在我的开发中该模块工作正常。我试图包含Levenshtein在设置中,但它不作为模块存在。我没有安装 python-Levenshtein,因为我无法在我的 Windows 机器上安装 .whl。

有没有人遇到过这个?当通过python运行良好时,为什么fuzzywuzzy会导致这个错误?有什么我想念的吗?

完整的错误可以在这里看到:http: //imgur.com/a/rSKsS

编辑:我能够弄清楚 - 我需要安装 python-Levenshtein 模块,必须继续努力才能安装 .whl (显然我并不像我想相信的那样精通命令提示符) . 之后,我将Levenshtein和包含fuzzywuzzy在包列表中,并且编译没有错误。

我要留下这个,因为我在谷歌搜索中找不到这个,所以希望没有其他人成为受害者!

4

1 回答 1

0

找到解决方案 -python-Levenshtein需要安装。从 gohlke 的存储库中获得了我的:http ://www.lfd.uci.edu/~gohlke/pythonlibs/#python-levenshtein - 确保您拥有与您的 python 安装相匹配的平台!我运行 x64 窗口,但我使用 x32 python 与我的 Oracle 驱动程序兼容 - 所以我需要安装 32 位模块。

于 2016-08-16T15:39:40.850 回答