注意,在哪个平台运行打包,就会对应生成那个平台的可执行文件。比如我在windows中执行,我将会得到exe执行包。
使用PyInstaller打包Python代码成为可执行的exe文件非常简单。以下是基本的步骤:
1、确保你已经安装了PyInstaller。如果没有安装,可以通过以下命令来安装:
powershellpip install pyinstaller
2、打开终端或命令提示符,并导航到你的Python代码所在的目录。
3、在终端或命令提示符中运行以下命令:
powershellpyinstaller -F your_script.py
其中,your_script.py 是你要打包的Python脚本的文件名。
4、PyInstaller将会自动分析你的脚本,并创建一个与你的脚本同名的文件夹。
5、在生成的文件夹中,你可能会看到一些额外的文件,例如.spec文件和一个名为dist的文件夹。
6、最终的可执行文件可以在dist文件夹中找到,文件名通常与你的脚本的文件名相同。
现在,你就可以将生成的可执行文件(.exe)拷贝到其他机器上,并在不安装Python解释器的情况下运行你的代码了。
常用指令:
powershellPyinstaller -F setup.py # 打包exe Pyinstaller -F -w setup.py # 不带控制台的打包 Pyinstaller -F -i xx.ico setup.py # 打包指定exe图标打包
参考:
https://blog.csdn.net/tangfreeze/article/details/112240342
https://pyinstaller.org/en/stable/spec-files.html#adding-files-to-the-bundle
我想将一些资源文件也打包进exe如何办?
运行:
powershellpyinstaller -F -w -i 2.ico --add-data ".\1.ico;." setup.py
-i 图标路径
–icon=图标路径
-F 打包成一个exe文件
-w 使用窗口,无控制台
-c 使用控制台,无窗口
-D 创建一个目录,里面包含exe以及其他一些依赖性文件
完成打包后,setup.exe里面如果依赖了外部文件,应该注意python找文件的写法:
比如:
pythonimport sys
import tkinter as tk
from os import path
from tkinter import ttk
import serial
import threading
# 先获取当前运行时临时目录路径
if getattr(sys, 'frozen', None):
basedir = sys._MEIPASS
else:
basedir = path.dirname(__file__)
ico_file = path.join(basedir, '1.ico')
本文作者:Dong
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!