这篇文章给大家分享的是有关怎么用python打包exe应用程序及PyInstaller安装方式的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
1、PyInstaller简介
PyInstaller是一个跨平台的Python应用打包工具,支持 Windows/Linux/MacOS三大主流平台,能够把 Python 脚本及其所在的 Python 解释器打包成可执行文件,从而允许最终用户在无需安装 Python 的情况下执行应用程序。
PyInstaller 制作出来的执行文件并不是跨平台的,如果需要为不同平台打包,就要在相应平台上运行PyInstaller进行打包。
2、PyInstaller安装
pip install Pyinstaller
有时候会安装失败?用以下方式安装
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Pyinstaller
永久设置
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
3. 准备需要的文件
我们的tree文件夹放在c盘的
fac.ico 程序的图标
tree.py 是python文件
4.使用Pyinstaller
使用默认Pyinstaller打包方式
打开cmd窗口,把路径切换到当前路径打开命令提示行,
1 切换到英文输入法 win+R 打开命令窗口 输入cmd
2 切换到项目目录
一定要切换到项目目录再执行打包命令
3 输入命令打包
pyinstaller -F -i ./fac.ico tree.py
输入命令后看见 successfully 那就是成功了
4 看打包的结果
这个时候多了很多文件和文件夹
dist目录就是我们打包好的地方
tree.exe 就是我们打包好的文件
5 运行查看我们打包好的exe文件
对,双击就可以打开
5、参数的含义
-F 表示生成单个可执行文件
-w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧!
-p 表示你自己自定义需要加载的类路径,一般情况下用不到
-i 表示可执行文件的图标
6. 附圣诞树源文件
tree.py
import turtlescreen = turtle.Screen()screen.setup(375, 700)circle = turtle.Turtle()circle.shape('circle')circle.color('red')circle.speed('fastest')circle.up()square = turtle.Turtle()square.shape('square')square.color('green')square.speed('fastest')square.up()circle.goto(0, 280)circle.stamp()k = 0for i in range(1, 13): y = 30 * i for j in range(i - k): x = 30 * j square.goto(x, -y + 280) square.stamp() square.goto(-x, -y + 280) square.stamp() if i % 4 == 0: x = 30 * (j + 1) circle.goto(-x, -y + 280) circle.stamp() circle.goto(x, -y + 280) circle.stamp() k += 3 if i % 4 == 3: x = 30 * (j + 1) circle.color('yellow') circle.goto(-x, -y + 280) circle.stamp() circle.goto(x, -y + 280) circle.stamp()square.color('brown')for i in range(13, 17): y = 30 * i for j in range(2): x = 30 * j square.goto(x, -y + 280) square.stamp() square.goto(-x, -y + 280) square.stamp()turtle.up()turtle.goto(-20,-250)turtle.write("节日快乐")# 这里可以送上你的祝福turtle.hideturtle()turtle.done()
感谢各位的阅读!关于“怎么用python打包exe应用程序及PyInstaller安装方式”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!