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中装饰器的一个妙用
Feb 08 Python
python中如何使用正则表达式的集合字符示例
Oct 09 Python
Python 创建空的list,以及append用法讲解
May 04 Python
Python使用pymongo模块操作MongoDB的方法示例
Jul 20 Python
深入了解python中元类的相关知识
Aug 29 Python
python通过matplotlib生成复合饼图
Feb 06 Python
python3 正则表达式基础廖雪峰
Mar 25 Python
python爬取豆瓣电影排行榜(requests)的示例代码
Feb 18 Python
如何用Matlab和Python读取Netcdf文件
Feb 19 Python
Jupyter安装拓展nbextensions及解决官网下载慢的问题
Mar 03 Python
Python实现信息轰炸工具(再也不怕说不过别人了)
Jun 11 Python
关于 Python json中load和loads区别
Nov 07 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
六酷社区论坛HOME页清新格调免费版 下载
2007/03/07 PHP
随时给自己贴的图片加文字的php代码
2007/03/08 PHP
php实现的短网址算法分享
2014/06/20 PHP
PHP、Python和Javascript的装饰器模式对比
2015/02/03 PHP
浅谈Yii乐观锁的使用及原理
2017/07/25 PHP
php字符串函数 str类常见用法示例
2020/05/15 PHP
Javascript Math ceil()、floor()、round()三个函数的区别
2010/03/09 Javascript
Iframe自适应高度绝对好使的代码 兼容IE,遨游,火狐
2011/01/27 Javascript
js事件(Event)知识整理
2012/10/11 Javascript
JavaScript 32位整型无符号操作示例
2013/12/08 Javascript
jQuery中on()方法用法实例详解
2015/02/06 Javascript
Form表单按回车自动提交表单的实现方法
2016/11/18 Javascript
Angular 常用指令实例总结整理
2016/12/13 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
Angular实现双向折叠列表组件的示例代码
2017/11/21 Javascript
说说node中的可读流和可写流的区别
2018/06/01 Javascript
jQuery实现的五星点评功能【案例】
2019/02/18 jQuery
利用JavaScript的Map提升性能的方法详解
2019/08/14 Javascript
mpvue实现小程序签到金币掉落动画(api实现)
2019/10/17 Javascript
python和c语言的主要区别总结
2019/07/07 Python
Python求解排列中的逆序数个数实例
2020/05/03 Python
Python lxml库的简单介绍及基本使用讲解
2020/12/22 Python
canvas实现按住鼠标移动绘制出轨迹的示例代码
2018/02/05 HTML / CSS
英国最大的天然和有机产品在线零售商之一:Big Green Smile
2020/05/06 全球购物
网上签名寄语活动留言
2014/01/18 职场文书
城市轨道交通工程职业规划书范文
2014/01/18 职场文书
珍惜时间演讲稿
2014/05/14 职场文书
市场营销专业毕业生求职信
2014/07/21 职场文书
2014年售票员工作总结
2014/11/19 职场文书
解除租房协议书
2014/12/03 职场文书
实习介绍信模板
2015/01/30 职场文书
党校学习个人总结
2015/02/15 职场文书
安全员岗位职责范本
2015/04/11 职场文书
灵魂歌王观后感
2015/06/17 职场文书
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技
Vue深入理解插槽slot的使用
2022/08/05 Vue.js