Python打包成exe文件的详细操作指南

 更新时间:2022年06月21日 11:07:25   作者:渔夫ciao  
Python越来越被大家所关注,随着越来越多的人开始学习Python代码大家其实或多或少都会遇到一些问题,下面这篇文章主要给大家介绍了关于Python打包成exe文件的详细操作,需要的朋友可以参考下

前言

我原本是学C\C++,这是本人第一篇关于python的文章。请多多关照!

对于python为什么要打包成exe文件,是因为传输源文件以及源代码给他人是需要配置好一定的环境才能进行编译操作,而打包成exe文件就可以跟电脑软件一样打开就可以运行也可以分享给他人。但是打包好的exe文件并不是很方便去拆包,所以在打包前一定要测试之后在打包发布。

版本控制方面尽量选择python3.6+32位版本,因为win64位系统向下兼容32位程序,如果不考虑32位系统的话无所谓,直接python64位版本直接打包就可以,但是只能在win64位系统运行。

好了下面我将从安装pyinstaller开始介绍,然后是打包教程,最后是命令解释。

PS:本次教程,我们不用cmd命令的小黑窗;
本次教程使用:Windows PowerShell(X86)
记得使用:管理员运行
图片最好使用ico后缀的图片,要么下载个格式转换。自己转换使用

一、安装pyinstaller

1.1 安装pyinstaller,使用安装命令:

pip3 install pyinstaller

1.2 如果遇到需要更新版本请输入:

pip install --upgrade pyinstaller

1.3 检查是否正确安装

emmmm好像安装完成了,

1.4 稍等,水一下;

python打包工具众多,推荐使用pyinstaller,本工具支持window和linux下使用。在windows下,大小为几十kb的源文件,打包成exe文件可能为几十兆,原因是把程序所引用的库文件也一起打包在一起了。

二、python打包成exe文件(附带图标打包)

本次打包有两种方法,根据自己勤快程度选择吧!

2.1 第一种:cd到指定文件夹打包存放

第一步:移动到指定存放exe文件的文件夹

cd 文件夹路径
例子:cd C:\FILE2\python_file

第二步:打包就完事了(看代码)

pyinstaller -F -w -i 路径一(图标) 路径二(py文件)
例子:pyinstaller -F -w -i  D:\python_file\BindundunDemo\qt-logo.ico  D:\python_file\BindundunDemo\main.py

2.2 第二种方法:cd到py源文件夹内打包存放

第一步:移动到源文件文件内

cd 文件夹路径
例子:cd C:\FILE2\python

第二步:还是打包就完事了(看代码)

pyinstaller -F -w -i 图标名.后缀 源文件.py
例子:pyinstaller -F -w -i qt-logo.ico one.py

2.3最终效果

dist文件里存放的是你生成的exe文件,点击即可使用。

至此,本次教程结束!

下面还有命令解释,请细细品尝。

参考:命令解释

命令命令全称命令解释
-F–onefile打包成单个可执行文件,如果你的代码都写在一个.py文件,则可以使用,如果是多个.py文件,建议不要使用。
-D–onedir打包多个文件,在dist中生成很多依赖文件,适合以框架形式编写工具代码,该方式代码较易于维护。默认编译就是-D的
-K–tk在部署时包含 TCL/TK。
-a–ascii不包含编码.在支持Unicode的python版本上默认包含所有的编码。
-d–debug产生debug版本的可执行文件
-w–windowed,–noconsole使用Windows子系统执行.当程序启动的时候不会打开命令行(仅对Windows有效)
-c–nowindowed,–console使用控制台子系统执行(默认)(只对Windows有效)
-s–strip可执行文件和共享库将run through strip。注意Cygwin的strip可能使普通的win32 Dll无法使用
-X–upx如果有UPX安装(执行Configure.py时检测),则会压缩执行文件(Windows系统中的DLL也会)。
-o DIR–out=DIR指定spec文件的生成目录,如果没有指定,而且当前目录是PyInstaller的根目录,会自动创建一个用于输出(spec和生成的可执行文件)的目录.如果没有指定,而当前目录不是PyInstaller的根目录,则会输出到当前的目录下。
-p DIR–path=DIR设置导入路径(和使用PYTHONPATH效果相似)。可以用路径分割符(Windows使用分号,Linux使用冒号)分割,指定多个目录.也可以使用多个-p参数来设置多个导入路径,让pyinstaller自己去找程序需要的资源
-i <FILE.ICO>–icon=<FILE.ICO>将file.ico添加为可执行文件的资源(只对Windows系统有效),改变程序的图标 pyinstaller -i ico路径 xxxxx.py
–i <FILE.EXE, N>–icon=<FILE.EXE, N>将file.exe的第n个图标添加为可执行文件的资源(只对Windows系统有效)
-v FILE–version=FILE将verfile作为可执行文件的版本资源(只对Windows系统有效)
-n NAME–name=NAME可选的项目(产生的spec的)名字.如果省略,第一个脚本的主文件名将作为spec的名字

总结

到此这篇关于Python打包成exe文件的详细操作指南的文章就介绍到这了,更多相关Python打包成exe文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python基础之循环语句相关知识总结

    Python基础之循环语句相关知识总结

    今天给大家带来的是关于Python基础的相关知识,文章围绕着Python循环语句展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • 使用Python实现U盘数据自动拷贝

    使用Python实现U盘数据自动拷贝

    这篇文章主要为大家详细介绍了如何使用Python实现U盘数据自动拷贝,即当电脑上有U盘插入时自动复制U盘内的所有内容,希望对大家有所帮助
    2025-02-02
  • python的列表生成式,生成器和generator对象你了解吗

    python的列表生成式,生成器和generator对象你了解吗

    这篇文章主要为大家详细介绍了python的列表生成式,生成器和generator对象,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • python中类与对象之间的关系详解

    python中类与对象之间的关系详解

    在本篇文章里小编给大家整理的是一篇关于python中类与对象之间的关系详解内容,有兴趣的朋友们可以学习下。
    2020-12-12
  • Python+kivy BoxLayout布局示例代码详解

    Python+kivy BoxLayout布局示例代码详解

    这篇文章主要介绍了Python+kivy BoxLayout布局的示例代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Python实现的爬取网易动态评论操作示例

    Python实现的爬取网易动态评论操作示例

    这篇文章主要介绍了Python实现的爬取网易动态评论操作,结合实例形式分析了Python针对网易评论正则爬取及json格式数据转换、提取等相关操作技巧,需要的朋友可以参考下
    2018-06-06
  • Python网络爬虫中的同步与异步示例详解

    Python网络爬虫中的同步与异步示例详解

    这篇文章主要给大家介绍了关于Python网络爬虫中同步与异步的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-02-02
  • Python Dask库处理大规模数据集的强大功能实战

    Python Dask库处理大规模数据集的强大功能实战

    Dask是一个灵活、开源的Python库,专为处理大规模数据集而设计,与传统的单机计算相比,Dask能够在分布式系统上运行,有效利用集群的计算资源,本文将深入介绍Dask的核心概念、功能和实际应用,通过丰富的示例代码展示其在大数据处理领域的强大能力
    2023-12-12
  • Python基于当前时间批量创建文件

    Python基于当前时间批量创建文件

    这篇文章主要介绍了Python基于当前时间批量创建文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • Python使用pywifi模块实现轻松查看WIFI密码

    Python使用pywifi模块实现轻松查看WIFI密码

    这篇文章主要为大家详细介绍了Python如何使用pywifi模块实现轻松查看WIFI密码,如果你不幸忘记了某个wifi的密码,但是你大概知道密码的一些构成,也可以参考下面的脚本
    2025-05-05

最新评论