python学习笔记--将python源文件打包成exe文件(pyinstaller)


Posted in Python onMay 26, 2018

pyinstaller 库的使用

PyInstaller是一个十分有用的第三方库,它能够在Windows、Linux、Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包,Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个独立文件方便传递和管理。PyInstaller 需要在命令行(控制台)下用pip 工具安装,如下:

:\>pip install pyinstaller

:\>pip3 install pyinstaller

PyInstaller 的官方网站网址为 http://www.pyinstaller.org/。PyInstaller 库会自动将 PyInstaller 命令安装到 Python 解释器目录中,与 pip 或 pip3 命令路径相同,因此可以直接使用。使用PyInstaller 库十分简单,请注意,由于 PyInstaller 不支持源文件命中有英文句号(.)存在,假设 dpython.py 文件在 D:\codes 目录中,命令如下:

:\>pyinstaller dpython.py

:\>pyinstaller D:\codes\dpython.py

执行完毕后,源文件所在目录将生成 dist 和 build 两个文件夹。其中,build 目录是 pyinstaller 存储临时文件的目录,可以安全删除。最终的打包程序在 dist 内部的 dpython 目录中。目录中其他文件是可执行文件 dpython.exe 的动态链接库。可以通过-F 参数对 Python 源文件生成一个独立的可执行文件,如下:

:\>pyinstaller -F dpython.py

执行后在 dist 目录中出现了 dpython.exe 文件,没有任何依赖库,执行它即可。使用 PyInstaller 库需要注意以下问题:文件路径中不能出现空格和英文句号(.);源文件必须是 UTF-8 编码,暂不支持其他编码类型。采用 IDLE编写的源文件都保存为 UTF-8 编码形式,可直接使用。PyInstaller 有一些常用参数,如下所示:

-h, --help 查看帮助
-v, --version

查看 PyInstaller 版本

--clean 清理打包过程中的临时文件
-D, --onedir
默认值,生成 dist 目录
-F, --onefile
在 dist 文件夹中只生成独立的打包文件第
-p DIR, --paths DIR 添加 Python 文件使用的第三方库路径
-i <.ico or .exe,ID or .icns>,--icon <.ico or .exe,ID or .icns >指定打包程序使用的图标(icon)文件

PyInstaller 命令不需要在 Python 源文件中增加代码,只需要通过命令行进行打包即可。-F 参数最为常用,对于包含第三方库的源文件,可以使用-p 添加第三方库所在路径。如果第三方库由 pip 安装且在Python 环境目录中,则不需要使用-p 参数。

Python 相关文章推荐
浅析Python中的多重继承
Apr 28 Python
Python类的用法实例浅析
May 27 Python
python+requests+unittest API接口测试实例(详解)
Jun 10 Python
Python中list查询及所需时间计算操作示例
Jun 21 Python
python之django母板页面的使用
Jul 03 Python
Django JWT Token RestfulAPI用户认证详解
Jan 23 Python
Python实现通过解析域名获取ip地址的方法分析
May 17 Python
python字符串中匹配数字的正则表达式
Jul 03 Python
python except异常处理之后不退出,解决异常继续执行的实现
Apr 25 Python
Python机器学习之PCA降维算法详解
May 19 Python
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
Jun 11 Python
PYTHON使用Matplotlib去实现各种条形图的绘制
Mar 22 Python
Python多重继承的方法解析执行顺序实例分析
May 26 #Python
Python多继承顺序实例分析
May 26 #Python
Python装饰器用法实例总结
May 26 #Python
python 脚本生成随机 字母 + 数字密码功能
May 26 #Python
Python高级用法总结
May 26 #Python
关于Python的一些学习总结
May 25 #Python
windows下python和pip安装教程
May 25 #Python
You might like
php curl_init函数用法
2014/01/31 PHP
PHPStorm2020.1永久激活及下载更新至2020(推荐)
2020/09/25 PHP
超级好用的jQuery圆角插件 Corner速成
2014/08/31 Javascript
node.js中的fs.unlink方法使用说明
2014/12/15 Javascript
Javascript实现div层渐隐效果的方法
2015/05/30 Javascript
js代码实现无缝滚动(文字和图片)
2015/08/20 Javascript
javascript从作用域链谈闭包
2020/07/29 Javascript
谷歌Chrome浏览器扩展程序开发小记
2016/01/06 Javascript
jQuery实现判断控件是否显示的方法
2017/01/11 Javascript
jQuery插件ContextMenu自定义图标
2017/03/15 Javascript
用angular实现多选按钮的全选与反选实例代码
2017/05/23 Javascript
bootstrap基本配置_动力节点Java学院整理
2017/07/14 Javascript
Angular模版驱动表单的使用总结
2018/05/05 Javascript
Less 安装及基本用法
2018/05/05 Javascript
jQuery实现基本动画效果的方法详解
2018/09/06 jQuery
JS实现换肤功能的方法实例详解
2019/01/30 Javascript
详解json串反转义(消除反斜杠)
2019/08/12 Javascript
解决layui弹框失效的问题
2019/09/09 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
Django框架自定义session处理操作示例
2019/05/27 Python
python读取大文件越来越慢的原因与解决
2019/08/08 Python
pytorch-神经网络拟合曲线实例
2020/01/15 Python
详解HTML5 LocalStorage 本地存储
2016/12/23 HTML / CSS
HTML5 window/iframe跨域传递消息 API介绍
2013/08/26 HTML / CSS
H&M美国官网:欧洲最大的服饰零售商
2016/09/07 全球购物
End Clothing美国站:英国男士潮牌商城
2018/04/20 全球购物
班级道德讲堂实施方案
2014/02/24 职场文书
企业党员个人自我评价
2014/09/20 职场文书
大学生党员批评与自我批评
2014/09/28 职场文书
张家口市高新区党工委群众路线教育实践活动整改方案
2014/10/25 职场文书
2015年乡镇统计工作总结
2015/04/22 职场文书
我在伊朗长大观后感
2015/06/16 职场文书
病房管理制度范本
2015/08/06 职场文书
公安纪律作风整顿心得体会
2016/01/23 职场文书
学校学习型党组织建设心得体会
2019/06/21 职场文书
MySQL池化框架学习接池自定义
2022/07/23 MySQL