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

作者:mdxy-dxy 时间:2021-04-17 22:03:22 

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 参数。

来源:https://blog.csdn.net/u010812071/article/details/78507946

标签:pyinstaller,python,打包,exe
0
投稿

猜你喜欢

  • django+celery+RabbitMQ自定义多个消息队列的实现

    2021-01-21 16:52:10
  • python读取查看npz/npy文件数据以及数据完全显示方法实例

    2022-05-15 15:45:36
  • Python3如何对urllib和urllib2进行重构

    2022-05-18 08:48:52
  • Python解析、提取url关键字的实例详解

    2023-07-08 11:52:27
  • ASP XML制作菜单管理程序

    2011-04-04 11:15:00
  • php基于websocket搭建简易聊天室实践

    2023-11-17 12:45:42
  • Python整数对象实现原理详解

    2022-10-09 13:53:03
  • 品牌的统一体验

    2010-05-19 13:08:00
  • python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)

    2021-05-13 17:40:35
  • Python中scatter散点图及颜色整理大全

    2022-10-06 02:17:51
  • Python文件读写保存操作的示例代码

    2022-03-20 01:21:23
  • JS中实现JAVA的hashCode算法

    2008-08-03 17:00:00
  • XML 问题: 超越DOM(轻松使用 DOM 的技巧和诀窍)

    2008-09-05 17:12:00
  • 谈谈Python进行验证码识别的一些想法

    2022-09-19 12:50:53
  • ASP 递归调用 已知节点查找根节点的函数

    2011-03-08 10:48:00
  • python3 wechatpy微信支付的项目实践

    2023-08-29 14:13:36
  • 对用户研究实践的思考

    2010-10-19 12:21:00
  • python中k-means和k-means++原理及实现

    2022-01-17 10:52:07
  • Python pyecharts 数据可视化模块的配置方法

    2022-12-09 06:24:26
  • Mysql中limit的用法方法详解与注意事项

    2023-11-16 09:20:05
  • asp之家 网络编程 m.aspxhome.com