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窗口,把路径切换到当前路径打开命令提示行,
4.1 切换到英文输入法 win+R 打开命令窗口 输入cmd
4.2 切换到项目目录
一定要切换到项目目录再执行打包命令
4.3 输入命令打包
pyinstaller -F -i ./fac.ico tree.py
输入命令后看见 successfully 那就是成功了
4.4 看打包的结果
这个时候多了很多文件和文件夹
dist目录就是我们打包好的地方
tree.exe 就是我们打包好的文件
5.5 运行查看我们打包好的exe文件
对,双击就可以打开
5、参数的含义
-F 表示生成单个可执行文件
-w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧!
-p 表示你自己自定义需要加载的类路径,一般情况下用不到
-i 表示可执行文件的图标
6. 附圣诞树源文件
tree.py
-
-
-
import turtle
-
-
-
screen = 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 =
0
-
for 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.color(
'red')
-
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()
-
-
7. 源文件下载
链接:https://pan.baidu.com/s/1bpa1-4W_X2Pb_7MeAB4DTQ
提取码:oq2w
更多优秀文章
转载:https://blog.csdn.net/bigzql/article/details/110944639