首页 新闻 会员 周边 捐助

python文件打包成exe可执行文件的方法?

0
悬赏园豆:10 [已解决问题] 解决于 2024-08-22 10:35

请问各位大佬,比如我有一个 python开发的文件夹test,里面放了几个文件夹(功能文件夹)、图标,如何把当前文件夹test里面的所有内容,打包成1个放到任何电脑上都可以在test文件夹里执行的文件呢?

mznz_AN的主页 mznz_AN | 初学一级 | 园豆:193
提问于:2024-08-21 14:39
< >
分享
最佳答案
0

是的,Python程序可以打包成可执行程序(.exe)文件,以便在没有安装Python解释器的Windows系统上运行。有几种方法可以实现这一点,其中最流行的包括使用PyInstaller、cx_Freeze、py2exe等工具。

PyInstaller
PyInstaller是一个非常流行的工具,它可以将Python程序打包成独立的可执行文件,支持Windows、Linux、Mac OS X等多个平台。使用PyInstaller非常简单,通常只需要在命令行中运行一个命令即可。

安装PyInstaller
首先,你需要安装PyInstaller。这可以通过pip来完成:

bash
pip install pyinstaller
打包Python程序
假设你的Python程序名为my_script.py,你可以在命令行中运行以下命令来打包它:

bash
pyinstaller --onefile my_script.py
这个命令会生成一个dist文件夹,里面包含了你的程序的.exe文件(在Windows上)或者相应的可执行文件(在其他操作系统上)。--onefile选项表示生成单个的打包文件,而不是一个包含所有依赖的文件夹。

cx_Freeze
cx_Freeze是另一个将Python脚本转换为可执行程序的工具。与PyInstaller类似,它也支持多个平台,但使用方法略有不同。

安装cx_Freeze
bash
pip install cx_Freeze
创建setup.py
cx_Freeze需要一个setup.py脚本来描述你的程序如何被打包。下面是一个简单的例子:

python
from cx_Freeze import setup, Executable

Dependencies are automatically detected, but it might need fine tuning.

build_exe_options = {"packages": ["os"], "excludes": ["tkinter"]}

GUI applications require a different base on Windows (the default is for a

console application).

base = None
if sys.platform == "win32":
base = "Win32GUI"

setup(name="My App",
version="0.1",
description="My app description",
executables=[Executable("my_script.py", base=base)],
options={"build_exe": build_exe_options},
)
然后,在命令行中运行:

bash
python setup.py build
py2exe
py2exe是另一个用于将Python脚本转换为Windows可执行程序的工具,但它仅适用于Windows平台。由于PyInstaller和cx_Freeze提供了跨平台的解决方案,py2exe的使用不如前两者广泛。

结论
对于大多数需求,PyInstaller是打包Python程序为可执行文件的首选工具,因为它简单易用,支持跨平台,并且功能强大。然而,根据你的具体需求和环境,cx_Freeze和py2exe也可能是合适的选择。

收获园豆:10
angelshelter | 大侠五级 |园豆:9907 | 2024-08-21 17:29

多谢大佬~!

mznz_AN | 园豆:193 (初学一级) | 2024-08-22 10:34
其他回答(3)
1

pyinstaller

彼时今日 | 园豆:524 (小虾三级) | 2024-08-21 15:16
0

PyInstaller

SymPny | 园豆:204 (菜鸟二级) | 2024-08-21 22:47
0

Pyinstaller
首先,更新pip:
pip -U upgrade pip
然后,下载Pyinstaller:
pip install pyinstaller
接着,将cmd导航到test的父目录并输入:pyinstaller -F(为了将其打包成一个exe而不是一堆依赖项文件) -w(for GUI app)或者-c(for cmd app) -i test\图标地址 你的main_file.py
NOTE:
图标一定得用.icon,转icon的网站去网上搜一下,64x64最稳妥
pyinstaller编译出来的.exe较大,也可以用setuptool,难一些

CodingRomon | 园豆:202 (菜鸟二级) | 2024-08-22 18:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册