问题:执行 pyinstaller 打包之后 的exe 文件时,提示以下信息

Traceback (most recent call last):
  File "xxx.py", line 6, in <module>
ModuleNotFoundError: No module named 'tkinter'
[18720] Failed to execute script 'xxx' due to unhandled exception!

在这里插入图片描述

使用 PyInstaller将 Python 脚本打包成 exe 文件时,tkinter 模块没有被正确包含进去。tkinter 是一个图形用户界面库,通常在标准的 Python 安装中是可用的,但在打包成 exe 的过程中可能需要特别处理。
使用 PyInstaller 的其他命令均未解决(路过的大佬,有用PyInstaller 命令打包成功的,可以留言告诉我哦),换成 cx_Freeze 工具
步骤:
1.安装 cx_Freeze

pip install cx_Freeze

2.创建 setup.py 文件:

# setup.py
import sys
from cx_Freeze import setup, Executable

build_exe_options = {"packages": ["tkinter"], "include_files": []}

setup(
    name="xxx",
    version="0.1",
    description="描述信息",
    options={"build_exe": build_exe_options},
    executables=[Executable("xxx.py", base=None)],
)

3.运行 cx_Freeze:

python setup.py build

4.找到打包好的可执行文件(以下是目录结构):

your_project/
├── build/
│   └── exe.win-amd64-3.10/
│       └── xxx.exe
├── xxx.py
└── setup.py

5.执行已打包的可执行文件
在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐