Я построил графический интерфейс tkinter для записи опроса в python3.4, который использует несколько пакетов. то мне нужно, чтобы скомпилировать его в исполняемый файл, так что я могу поставить его на машине с сотрудниками (мы оба на windows7 платформе) Я структурированы мой setup.py выглядеть следующим образом:cx_Freeze дает ошибку при использовании fuzzywuzzy
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, потому что я не могу получить .whl для установки на мою машину Windows.
Кто-нибудь сталкивался с этим? Почему fuzzywuzzy вызывает эту ошибку, когда она работает отлично через python? Есть что-то, что мне не хватает?
Полная погрешность можно увидеть здесь: http://imgur.com/a/rSKsS
EDIT: Я был в состоянии понять это - мне нужно установлен модуль питона-Левенштейна, должен был продолжать работать на него, чтобы получить .whl установить (по-видимому, я не так разбираюсь в командной строке, как мне хотелось верить). После этого я включил Levenshtein
и fuzzywuzzy
в список пакетов и скомпилировал его без ошибок.
Я собираюсь оставить это, потому что я не мог найти это в поиске Google, поэтому, надеюсь, никто больше не станет жертвой!