在一个.exe文件中编译为模块

时间:2018-09-16 00:10:10

标签: python pyinstaller

说我有一个用tkinter制作的应用程序,我想编译成一个.exe文件。在此程序中,我使用base64字符串,以便任何用户都可以在应用程序中读取图像,而无需下载任何其他图像文件(请参阅Embed icon in python script)。由于这些字符串会占用很多行,因此我可以使用base64字符串制作另一个.py文件,然后将这些字符串作为变量从另一个文件导入到我的主文件中。但是,如果我使用pyinstaller将我的主文件编译为.exe,它是否还将使用base64字符串编译另一个.py文件,还是我绝对必须在一个python文件中编写base64字符串和tkinter应用程序? :)

1 个答案:

答案 0 :(得分:0)

它将同时使用base64字符串编译另一个.py文件。

PyInstaller检查代码中的import语句,并自动编译代码使用的所有模块。如果您使用诸如动态导入之类的棘手工具,则它可能并不总是有效,但对于普通导入,您不需要任何特殊配置。请查看PyInstaller docs on "finding the files your program needs",了解更多详细信息。

实际上,如果您愿意,也可以将Tkinter主文件分解为不同的模块,以使其易于维护。

相关问题