将.py文件打包成.exe文件

文章目录

      • 步骤:
        • [1. 安装 PyInstaller](#1. 安装 PyInstaller)
        • [2. 打包 `.py` 文件为 `.exe`](#2. 打包 .py 文件为 .exe)
        • [3. 其他常见的选项](#3. 其他常见的选项)
        • [4. 查找生成的 `.exe` 文件](#4. 查找生成的 .exe 文件)
        • [5. 打包的其他文件和目录](#5. 打包的其他文件和目录)
      • 注意事项:

突然想到.py文件每次运行还得打开编译器,真麻烦,直接打包成.exe文件不是方便很多
要将 .py 文件打包成 .exe 文件,你可以使用 PyInstaller 工具。 PyInstaller 是一个常用的 Python 工具,它可以将 Python 脚本打包成独立的可执行文件,允许你在没有安装 Python 的机器上运行脚本。

步骤:

1. 安装 PyInstaller

首先,确保你已经安装了 PyInstaller。如果没有安装,可以通过 pip 来安装:win+r ,输入cmd

激活环境

bash 复制代码
conda activate base
bash 复制代码
pip install pyinstaller
2. 打包 .py 文件为 .exe

假设你有一个 Python 脚本 script.py,你可以在命令行中使用以下命令来打包:

bash 复制代码
pyinstaller --onefile script.py

这个命令的含义:

  • --onefile:将所有依赖打包成一个单独的 .exe 文件。如果不加 --onefile,PyInstaller 会生成一个包含多个文件和目录的输出。
  • script.py:你的 Python 脚本文件名。
3. 其他常见的选项

PyInstaller 提供了很多选项,可以根据你的需求进行选择:

  • 隐藏控制台窗口(适用于 GUI 应用程序):

    如果你的应用程序是图形界面(GUI)应用程序,而你不希望看到控制台窗口,可以加上 --noconsole(或 -w)参数:

    bash 复制代码
    pyinstaller --onefile --noconsole script.py
  • 添加图标

    可以为生成的 .exe 文件设置图标,使用 --icon 参数:

    bash 复制代码
    pyinstaller --onefile --icon=icon.ico script.py

    icon可以在https://www.iconfont.cn/下载. 下载的png改后缀为.ico即可

    • 关闭终端

    • 但是每一次启动都会出现终端,感觉很恶心.索性不希望看到终端窗口,只想显示图形界面,可以通过以下步骤来避免打开控制台窗口:
bash 复制代码
pyinstaller --onefile --icon=icon.ico --noconsole script.py

完成,结束.

4. 查找生成的 .exe 文件

运行完上述命令后,PyInstaller 会在当前目录下创建一个 dist 文件夹,生成的 .exe 文件会保存在该文件夹中。

例如,在 dist 文件夹下,你可以找到 script.exe 文件。

5. 打包的其他文件和目录

除了 .exe 文件,PyInstaller 还会生成一些其他文件和目录,通常是一些临时文件和依赖库。它们会存放在 build 文件夹中。你不需要关心这些文件,因为最终的 .exe 文件已经包含了所有必要的依赖。

注意事项:

  1. 外部依赖 :如果你的 Python 脚本依赖于其他第三方库(例如 tkinternumpyPillow 等),PyInstaller 会自动将它们打包进 .exe 文件。但某些库可能会遇到问题,具体可以参考 PyInstaller 的文档进行调整。
  2. 文件大小 :打包后的 .exe 文件可能会非常大,因为它包含了 Python 解释器和所有依赖的库。
  3. 测试 :在其他机器上运行打包后的 .exe 文件时,确保目标机器已安装必要的运行时环境。对于某些库(例如 numpypandas 等),需要特别注意依赖关系。
相关推荐
一晌小贪欢3 分钟前
Python爬虫第9课:验证码识别与自动化处理
爬虫·python·自动化·网络爬虫·python爬虫·python3
bin91536 分钟前
AI工具赋能Python开发者:项目开发中的创意守护与效率革命
开发语言·人工智能·python·工具·ai工具
被放养的研究生9 分钟前
Python常用的一些语句
开发语言·python
Run Freely93711 分钟前
Python_封装案例
python
程序员爱钓鱼1 小时前
Python编程实战 · 基础入门篇 | 条件判断 if...else
后端·python
程序员爱钓鱼1 小时前
Python编程实战 · 基础入门篇 | 循环语句 for / while
后端·python
飞翔的佩奇7 小时前
【完整源码+数据集+部署教程】【天线&水】舰船战舰检测与分类图像分割系统源码&数据集全套:改进yolo11-repvit
前端·python·yolo·计算机视觉·数据集·yolo11·舰船战舰检测与分类图像分割系统
木头左8 小时前
最大回撤约束下ETF多因子动态止盈参数校准方案
python
汤姆yu9 小时前
2026版基于python的协同过滤音乐推荐系统
开发语言·python
汤姆yu9 小时前
基于python的电子商务管理系统
开发语言·python