Python项目打包为exe教程

简介: Python项目打包为exe教程

前言

 

  • 对于python为什么要打包成exe文件,是因为传输源文件以及源代码给他人是需要配置好一定的环境才能进行编译操作,而打包成exe文件就可以跟电脑软件一样打开就可以运行也可以分享给他人。但是打包好的exe文件并不是很方便去拆包,所以在打包前一定要测试之后在打包发布。
  • 版本控制方面尽量选择python3.6+32位版本,因为win64位系统向下兼容32位程序,如果不考虑32位系统的话无所谓,直接python64位版本直接打包就可以,但是只能在win64位系统运行。好了下面我将从安装pyinstaller开始介绍,然后是打包教程,最后是命令解释。


    准备工作

 

pipenv简介

 

过去我们一般用 virtualenv搭建虚拟环境,管理python版本,用 pip进行包的管理。在虚拟环境激活状态下,可以安装所需的依赖包,安装的依赖包会保存至项目虚拟环境目录下,不会污染系统全局环境

virtualenv的使用存在一定的问题:

  • 由于跨平台的使用不太一致,有时候处理包之间的依赖总存在问题。
  • 可能需要手动安装/删除某些特定版本的包
  • 存在多个环境(开发环境、测试环境、生产环境)时,依赖包目录文件requirements.txt 会需要存在多个,无比繁琐
  • 要定期更新 requirements.txt,保持项目环境的一致性

pipenv能够有效管理Python多个环境,各种包,相当于 virtualenv 和 pip 的合体,且更加强大。

pipenv主要有以下特性:

  • pipenv集成了pipvirtualenv两者的功能,且完善了两者的一些缺陷。
  • pipenv会在项目目录下创建 Pipfile Pipfile.lock 文件,管理包之间的依赖关系。
    virtualenv需要将虚拟环境依赖包的导出为requirements.txt, 一旦依赖包变动,就要重新导出,现在PipfilePipfile.lock文件可以节省这些步骤,更方便地管理,查看依赖关系是十分方便。
  • 各个地方使用了哈希校验,无论安装还是卸载包都十分安全,且会自动公开安全漏洞。。
  • 通过加载 .env文件简化开发工作流程。
  • 便于docker容器化管理Pipfile文件支持生成 requirements文件,便于项目代码docker化管理,另外,pipfile还支持v–dev环境,可以在调试阶段安装许多调试工具等,而不影响生产环境的环境。
  • 无需激活虚拟环境执行代码,只要有pipfile文件即可使用虚拟环境的依赖包执行python脚本,如:通过执行命令 pipenv run python xx.py
  • 支持Python2 和 Python3,在各个平台的命令都是一样的。

 

1

安装pipenv

 

pip install pipenv


 

2

检查是否安装成功

 

pipenv --version


能看到版本号,说明安装成功。


 

 


pyinstaller简介


PyInstaller 是一个在 Windows、GNU/Linux、macOS、FreeBSDOpenBSDSolarisAIX 下将 Python 程序冻结(打包)为独立可执行文件的程序。与类似工具相比,它的主要优点是 PyInstaller 与 Python 3.7-3.10 一起工作,由于透明压缩,它构建了更小的可执行文件,它是完全多平台的,并使用操作系统支持加载动态库,从而确保完全兼容。 [2


 


pyinstaller命令参数详解


 



进入pipenv虚拟环境

 

pipenv shell


如下图所示,虚拟环境创建成功:





安装项目所需依赖包





pip install lxml
pip install requests
pip install bs4



最后在安装pyinstaller,因为我们这个是虚拟环境,所以需要在虚拟环境内安装pyinstaller包


pip install pyinstaller


安装完pyinstaller后再次使用pyinstaller命令打包我们的Python项目即可。


pyinstaller -w -i 图标.ico  -F xxx.py


ps:-w 代表取出终端窗口,-i 表示设置程序显示 图标,-F 表示需要打包的xxx.py文件


如图所示,出现 complateed successfullly 说明打包成功。


然后再使用如下命令清理留在c盘的环境,避免占用磁盘存储空间


pipenv --rm



打包好的exe在项目的dist目录下,可以看到占用大小还是很小的~


相关文章
|
12天前
|
JSON 数据可视化 API
Python 中调用 DeepSeek-R1 API的方法介绍,图文教程
本教程详细介绍了如何使用 Python 调用 DeepSeek 的 R1 大模型 API,适合编程新手。首先登录 DeepSeek 控制台获取 API Key,安装 Python 和 requests 库后,编写基础调用代码并运行。文末包含常见问题解答和更简单的可视化调用方法,建议收藏备用。 原文链接:[如何使用 Python 调用 DeepSeek-R1 API?](https://apifox.com/apiskills/how-to-call-the-deepseek-r1-api-using-python/)
|
29天前
|
测试技术 Python
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
112 31
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
|
23天前
|
IDE 测试技术 项目管理
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
PyCharm是由JetBrains开发的Python集成开发环境(IDE),专为Python开发者设计,支持Web开发、调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试和版本控制等功能。它有专业版、教育版和社区版三个版本,其中社区版免费且适合个人和小型团队使用,包含基本的Python开发功能。安装PyCharm前需先安装Python解释器,并配置环境变量。通过简单的步骤即可在PyCharm中创建并运行Python项目,如输出“Hello World”。
206 13
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
|
2月前
|
Python
课程设计项目之基于Python实现围棋游戏代码
游戏进去默认为九路玩法,当然也可以选择十三路或是十九路玩法 使用pycharam打开项目,pip安装模块并引用,然后运行即可, 代码每行都有详细的注释,可以做课程设计或者毕业设计项目参考
78 33
|
2月前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
87 8
|
4月前
|
数据可视化 IDE 开发工具
【Python篇】PyQt5 超详细教程——由入门到精通(中篇二)
【Python篇】PyQt5 超详细教程——由入门到精通(中篇二)
460 13
|
4月前
|
监控 数据可视化 搜索推荐
【Python篇】matplotlib超详细教程-由入门到精通(下篇)2
【Python篇】matplotlib超详细教程-由入门到精通(下篇)
68 8
|
4月前
|
数据可视化 API 数据处理
【Python篇】matplotlib超详细教程-由入门到精通(上篇)
【Python篇】matplotlib超详细教程-由入门到精通(上篇)
231 5
|
4月前
|
编解码 数据可视化 IDE
【Python篇】matplotlib超详细教程-由入门到精通(下篇)1
【Python篇】matplotlib超详细教程-由入门到精通(下篇)
55 3
|
4月前
|
数据可视化 IDE Linux
【Python篇】PyQt5 超详细教程——由入门到精通(序篇)
【Python篇】PyQt5 超详细教程——由入门到精通(序篇)
591 2

热门文章

最新文章