用pyinstaller将python程序打包成可执行程序的一些事
2021/4/27 12:29:01
本文主要是介绍用pyinstaller将python程序打包成可执行程序的一些事,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
说明目录
- 一、背景
- 二、安装 PyInstaller
- 三、在pipenv下面用pyinstaller打包
- 1、安装pipenv
- 2、启动pipenv
- 3、安装小程序的依赖包
- 4、在pipenv环境下安装pyinstaller
- 5、打包程序
- 6、注意事项
- 7、可能遇到的坑
一、背景
我们在使用python写了程序后,可以使用 PyInstaller 将 Python 程序生成可直接运行的exe程序文件,这个程序可以转发给其他人在 Windows 或 Mac OS X 平台上使用,且不需要他们安装Python解释器和相应的包。
本文章只在Windows环境下进行说明,其他平台请做相应调整。
二、安装 PyInstaller
Windows平台下,用豆瓣源安装
pip install pyinstaller -i https://pypi.douban.com/simple
三、在pipenv下面用pyinstaller打包
如果我们在原生的Python环境下打包我们的程序,会发现exe执行文件特别大,那是因为打包的时候把我们安装的所有包都一起打包进去了。所以我们要在pipenv环境下打包
1、安装pipenv
pip install pipenv
2、启动pipenv
pipenv shell
3、安装小程序的依赖包
根据自己程序所需的包进行安装,一定是先启动pipenv环境
(exam-u48_tzbB) D:\pyproject\exam>pip install pandas openpyxl xlrd xlwt pypiwin32
说明一下:有些包会存在隐藏的依赖包,比如pandas依赖xlrd xlwt,在打包的warning文件中发现还需要win32com,在python下需安装pypiwin32包
4、在pipenv环境下安装pyinstaller
注意一定是要先启动pipenv
(exam-u48_tzbB) D:\pyproject\exam>pip install pyinstaller
5、打包程序
(exam-u48_tzbB) D:\pyproject\exam>pyinstaller -Fw exam_tk.py # 参数-F表示将依赖文件全部打包到exe文件中,w表示不需要命令行调试窗口
6、注意事项
以上动作,包括安装pyinstaller都必须在pipenv虚拟环境中进行。
比如我上面做的程序,不在pipenv虚拟环境下打包出来的exe文件113M,在虚拟环境下打包的exe文件34M。
7、可能遇到的坑
①如果程序进行了多次打包,打包后拿到其他电脑上使用,可能出现错误error loading python dll
- 解决办法:使用以下命令进行打包
(exam-u48_tzbB) D:\pyproject\exam>pyinstaller --clean --win-private-assemblies -Fw exam_tk.py
- 说明-clean,清除pyinstaller的缓存并移除之前建立的临时文件,
–win,私人组件,把跟这个程序捆绑的共享的组件都改为私有的
②如果你的系统是64位的,打包后的程序在32位系统无法使用,因为windows向上不兼容
- 解决办法:在虚拟机中安装32位python重新打包的。
- 或者,采用比较笨的办法,找一台 32系统的电脑,安装32位python重复上面的全部步骤
这篇关于用pyinstaller将python程序打包成可执行程序的一些事的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器