简述

1.python

python作为一门解释型脚本语言,它有三种发布方式:

  • 文件 : 源码文件,运行需要使用者安装Python环境并且安装依赖的各种库
  • pyc文件:pyc文件是Python解释器可以识别的二进制码,可跨平台的,需要使用者安装相应版本的Python和依赖库。
  • 可执行文件:不需要安装python环境和依赖库,可针对不同平台需要打包不同的可执行文件(Windows,Linux,Mac,…)

2.pyInstaller

  •  PyInstaller工具可以把python解析器和脚本打包成一个可执行的文件,并不是编译成真正的机器码,打包成一个可执行文件后运行效率可能会降低,好处就是在使用者的机器上可以不用安装python和你的脚本依赖的库。
  • 利用PyInstaller对指定的的脚本打包时,会先分析脚本所依赖的其他脚本,然后根据导包路径去查找,把所有相关的脚本收集起来,包括Python解析器,然后根据你的命令参数可分别生成文件夹,或者打包成一个可执行文件。
  • 无论是生成的文件夹里的可执行文件或者只打包成一个可执行文件都可以直接运行,前者需要把整个文件夹都给别人。
  • 注意:PyInstaller打包的执行文件,只能在和打包机器系统同样的环境下。也就是说,不具备可移植性,若需要在不同系统上运行,就必须针对该平台进行打包。

环境准备

1.python安装

进入官网https://www.python.org/ 点击Downloads下的Windows按钮,进入下载页面,并安装

python3.9实现pyinstaller打包python文件成exe

打开cmd,输入python,如果结果如下图所示则表示安装成功!

python3.9实现pyinstaller打包python文件成exe

卸载Python,点击之前下载的Python安装包,点击Uninstall卸载。

2.pyInstaller安装

PyInstaller在windows下的安装
使用命令pip install PyInstaller即可
在windows下,pyinstaller需要PyWin32的支持。当用pip安装PyInstaller时未找到PyWin32,会自动安装pypiwin32

python3.9实现pyinstaller打包python文件成exe

PyInstaller在mac,linux下的安装
pip install PyInstaller

PyInstaller打包

1. 基本语法:

PyInstaller -F -w -i xxx.ico dev.py --hidden-import=pandas._libs.tslibs.timedeltas

常用参数:
-F 指只生成一个exe文件,不生成其他dll文件
-w 不弹出交互窗口,如果你想程序运行的时候,与程序进行交互,则不加该参数
-i 设定程序图标 ,其后面的xxx.ico文件就是程序小图标
dev.py 要打包的程序,如果你不是在dev.py同一级目录下执行的打包命令,这里得写上dev.py的路径地址
–hidden-import=pandas._libs.tslibs.timedeltas 隐藏相关模块的引用

注意:你在哪个目录下执行的命令,默认打包完成的文件或者文件夹就在该目录

2. 打包实例:

D:\itwork\python>pyinstaller -F -c one.py

python3.9实现pyinstaller打包python文件成exe

python3.9实现pyinstaller打包python文件成exe

python3.9实现pyinstaller打包python文件成exe

PyInstaller打包常见问题

1.超时:Read timed out

python3.9实现pyinstaller打包python文件成exe

标签:
python文件打包成exe,pyinstaller打包生成exe

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
评论“python3.9实现pyinstaller打包python文件成exe”
暂无“python3.9实现pyinstaller打包python文件成exe”评论...

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。