cx_Freeze ModuleNotFoundError: нет модуля с именем 'tkinter' (я пробовал много решений, но не работал) - PullRequest
0 голосов
/ 08 февраля 2020

Фон:

Я новичок в python. Я работаю с программой, включающей tkinter, и она хорошо работает в cmd. Затем я попытался использовать cx_Freeze, чтобы превратить этот файл в программу .exe. Казалось, что все хорошо, потому что я получил ту программу. Но когда я запустил ее, ошибки произошло:

ModuleNotFoundError: No module named 'tkinter'

Затем я искал свою проблему в Google, и кто-то упомянул, что мы должны добавить некоторые конфигурации в PATH, и что мы должны переписать наш setup.py. Я сделал это следующим образом:

import os
from cx_Freeze import setup, Executable

os.environ['TCL_LIBRARY'] = r'C:\Users\98231\AppData\Local\Programs\Python\Python37-32\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'C:\Users\98231\AppData\Local\Programs\Python\Python37-32\tcl\tk8.6'

# Dependencies are automatically detected, but it might need
# fine tuning.
buildOptions = dict(
    packages = [],
    excludes = [],
    include_files=[r'C:\Users\98231\AppData\Local\Programs\Python\Python37-32\DLLs\tcl86t.dll', r'C:\Users\98231\AppData\Local\Programs\Python\Python37-32\DLLs\tk86t.dll']
)

import sys
base = 'Win32GUI' if sys.platform=='win32' else None

executables = [
    Executable('Addition.py', base=base)
]

setup(name='editor',
      version = '1.0',
      description = '',
      options = dict(build_exe = buildOptions),
      executables = executables)

Я видел много комментариев на веб-сайтах, что многие люди успешно использовали такой метод для решения своих проблем, но у меня это не сработало! Аааааа. Независимо от того, как я написал setup file, он продолжал повторять ту же ошибку, что и выше.

Я проверил свои версии tkinter и cx_Freeze, и оба они оказались хорошими.

Я не знаю, что делать, и искренне надеюсь, что вы поможете мне с этим.

...