Python打包exe和生成安装程序

1.打包exe

python打包成exe文件的一般步骤如下:

除了上述基本步骤外,还有一些可选的参数和技巧可以用来优化打包过程和结果,例如:

 

下面是一个示例

我要打包的文件是hello.py 因为没有提前准备.ico文件,我就在电脑里随便找了一个,这里用的是QQ的图标。

pyinstaller -F -w -i  favicon.ico main.py

这里没有加上-w参数,因为我需要黑色的输出窗口
打包完成后没有报错的话就会有successfully,接着会生成一个目录结构,其中的.exe文件就在dist文件夹中,如下图

 

如果没有报错的话,这里双击就能运行了(注意,如果你的程序中有读取图片、文档、视频等操作,记得将对应的文件放到相对(相对于该.exe,而不是.py)的目录下。如果代码中你用的是绝对路径,可忽略该提示)

2.生成安装包

在项目文件夹下会生成三个新的文件夹:build, dist, main.spec。其中dist文件夹中的main.exe就是打包好的可执行文件。
将dist文件夹中的内容压缩成zip格式,例如setup.zip。
打开nsis软件,选择zip的加载方式,找到刚才的zip文件,设置生成路径和其他选项,点击generate,等待编译完成。


在生成路径下会出现一个安装包文件,例如setup.exe,这就是你的Python项目的安装包了。

安装测试:

安装路径可以选择

更复杂的制作安装包方式请参考:使用NSIS制作安装包 - 魔豆 - 博客园 (cnblogs.com)

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将Python程序打包成.exe文件,可以使用Pyinstaller这个工具。Pyinstaller支持在Windows和Linux下使用。在Windows下,可以将几十KB大小的源文件打包成几十兆大小的.exe文件。这是因为Pyinstaller会将程序所引用的库文件一起打包在一起。你可以按照以下步骤来进行打包: 1. 首先,安装Pyinstaller。可以使用pip命令在命令行中执行以下命令进行安装:pip install pyinstaller 2. 确保你的Python程序是可执行的,并且没有任何错误或异常。 3. 在命令行中,进入到你的Python程序的目录。 4. 执行以下命令来使用Pyinstaller进行打包:pyinstaller your_script.py 这里的"your_script.py"是你要打包Python程序的文件名。 5. 执行完上述命令后,Pyinstaller会在当前目录下生成一个名为"dist"的文件夹。在这个文件夹中,你将找到你的打包后的.exe文件。 需要注意的是,打包过程中可能会出现一些警告或错误信息。你可以根据需要去解决这些问题。另外,如果你希望为打包后的.exe文件添加图标,可以参考Pyinstaller的文档或其他教程来实现。 参考资料: python打包工具众多,推荐使用pyinstaller,本工具支持window和linux下使用。在windows下,大小为几十kb的源文件,打包exe文件可能为几十兆,原因是把程序所引用的库文件也一起打包在一起了。 用 Pyinstaller 模块将 Python 程序打包exe 文件(全网最全面最详细)_小康2022的博客-CSDN博客 前言 我原本是学C\C ,这是本人第一篇关于python的文章。请多多关照!对于python为什么要打包exe文件,是因为传输源文件以及源代码给他人是需要配置好一定的环境才能进行编译操作,而打包exe文件就可以跟电脑软件一样打开就可以运行也可以分享给他人。但是打包好的exe文件并不是很方便去拆包,所以在打包前一定要测试之后在打包发布。版本控制方面尽量选择python3.6 32位版本,因为win64位系统向下兼容32位程序,如果不考虑32位系统的话无所谓,直接python64位版本直接打包就可以,但是只能在win64位系统运行。好了下面我将从安装pyinstaller开始介绍,然后是打包教程,最后是命令解释。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Python打包exe文件_详细操作](https://blog.csdn.net/weixin_45357007/article/details/123861771)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [将Python程序打包exe文件](https://blog.csdn.net/weixin_62651706/article/details/126219282)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值