我已经为 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
在包列表中,并且编译没有错误。
我要留下这个,因为我在谷歌搜索中找不到这个,所以希望没有其他人成为受害者!