一聚教程网:一个值得你收藏的教程网站

热门教程

用python打包exe应用程序及PyInstaller安装方式代码

时间:2022-06-25 01:30:45 编辑:袖梨 来源:一聚教程网

本篇文章小编给大家分享一下用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窗口,把路径切换到当前路径打开命令提示行,

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.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()
 
 

热门栏目