将python脚本打包到.exe文件中,同时保留导入的模块

2024-10-03 15:29:38 发布

您现在位置:Python中文网/ 问答频道 /正文

为了便于使用,我有一个python脚本要打包到.exe文件中。python脚本广泛使用Tkinter模块来实现漂亮的GUI。我首先使用pyinstaller和此处概述的指南将其打包到.exe中-https://datatofish.com/executable-pyinstaller/

我有两个问题。首先,我的脚本使用了FlowCal模块,它不是Python的pyinstaller附带的(我使用Spyder编写脚本,我使用pyinstaller编译Python 3.8),所以我用pip install FlowCal安装了FlowCal,所以Python也得到了它(我想这就是它的工作方式?不太确定)。但是,FlowCal依赖于各种sklearn模块,安装模块、编译成exe,然后反复检查是否可以工作,这将是一件令人头疼的事情。是否有一种方法可以将脚本使用的所有模块(以及导入的模块使用的所有模块)编译到脚本中

第二个问题是,除了GUI,我还有另一个窗口。包括图片。我怎样才能移开那扇窗户

Picture of that another window (right) with the GUI window (left)


Tags: 模块文件https脚本comtkinter指南gui
2条回答

将缺少的模块添加到hiddenimports

hiddenimports=['sklearn.neighbors.typedefs','sklearn.neighbors.quad_tree','sklearn.tree._utils']

或者在cmd中创建exe时使用它作为

 hidden-import=modulename

另一件你可以不费吹灰之力的事情是使用auto-py-to-exe。这将使用write命令从.py生成.exe,只需单击GUI中的一些按钮。为此,您必须在命令提示符或PowerShell中发出命令:pip install auto-py-to-exe,这是您最喜欢的。成功安装auto py to exe后,在命令提示符下发出命令auto-py-to-exe。然后提供必要的信息,并获得生成的可执行文件

相关问题 更多 >